Docker 发送/接收带有快照的子卷(btrfs)
btrfs子卷很棒,可以嵌套。 Docker支持btrfs并大量使用嵌套快照 我正在尝试将/var/lib/docker移动到一个新驱动器 程序“应该”是。Docker 发送/接收带有快照的子卷(btrfs),docker,snapshot,btrfs,Docker,Snapshot,Btrfs,btrfs子卷很棒,可以嵌套。 Docker支持btrfs并大量使用嵌套快照 我正在尝试将/var/lib/docker移动到一个新驱动器 程序“应该”是。 1-制作/var/lib/docker的ro快照 btrfs sub snap create /var/lib/docker /var/snapshots/docker_some_datetime 源和目标都位于同一个fs上 2.-将快照发送到新驱动器 btrfs send /var/snapshots/docker_some_datet
1-制作/var/lib/docker的ro快照
btrfs sub snap create /var/lib/docker /var/snapshots/docker_some_datetime
源和目标都位于同一个fs上
2.-将快照发送到新驱动器
btrfs send /var/snapshots/docker_some_datetime | btrfs receive /mnt/drive2/snapshots/
在docker文件夹中,有一个btrfs文件夹,其中充满了子卷。我希望快照中的文件夹也是子卷,但它们似乎只是常规文件夹
);TLDR所以,问题是,如果我拍摄一个子卷的快照,其中嵌套了子卷,那么在快照中它们不也应该是子卷吗?我在这里遇到了btrfs限制吗?让我们先将btrfs子卷视为“普通”分区,然后看一个示例:
- 硬盘的一个分区安装在
上,第二个分区安装在/mnt/HDD
上/mnt/HDD/nested
- 如果对第一个分区(例如
或.img
)进行完整备份,这将不包括第二个分区,因为它当前安装在第一个分区的“内部”.iso
现在对于BTRFS(据我所知):
- 如果装载BTRFS分区(例如,通过
),默认情况下,它的顶级子卷会装载在所需位置/etc/fstab
- 以及位于装入的BTRFS子卷内的所有子卷(通过与顶级子卷具有子-父关系),也会在相对子路径上自动“装入”
- 尽管并非一个BTRFS设备的所有子卷都必须始终可见:如果使用装载选项
,则只有子卷会自动“装载”在相对子路径上subvolid=
(我多次在引号中加上“mounted”,因为子卷没有真正装入-它们不像普通的Linux装入那样可见)简而言之:不,嵌套子卷不包括在其父卷的快照中,而是如您在父卷快照中看到的空目录所示,请参阅
要快照嵌套的子卷布局,必须手动递归快照所有包含的子卷。这是否回答了您的问题?