![挂载 btrfs 子卷是否可以递归工作?](https://linux22.com/image/1379909/%E6%8C%82%E8%BD%BD%20btrfs%20%E5%AD%90%E5%8D%B7%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E9%80%92%E5%BD%92%E5%B7%A5%E4%BD%9C%EF%BC%9F.png)
/dev/sda3 上的 btrfs 文件系统具有以下子卷:
root
root/home
以及以下安装:
/dev/sda3 on /
文件夹是/home
在root
子卷上,还是在root/home
子卷上?
答案1
默认子卷
当您创建新的 BTRFS 文件系统时,系统不仅会创建第一个根子卷(编号为 0),还会将其标记为默认子卷。当您要求操作系统挂载 BTRFS 卷中的子卷(而不指定子卷编号)时,它会确定哪些现有子卷已被标记为“默认子卷”并挂载它。如果现有子卷中没有一个具有“默认子卷”标签(例如,因为默认子卷已被删除),mount 命令会返回一条相当神秘的消息:
# mount /dev/loop0 /mnt mount: No such file or directory
还可以随时更改 BTRFS 卷中包含的哪个子卷被视为默认卷。这可以通过 btrfs subvolume set-default 来实现。以下内容将子卷 261 标记为默认卷:
# btrfs subvolume set-default 261 /mnt
在该操作之后,执行以下操作是完全相同的:
# mount /dev/loop0 /mnt # mount -o subvolid=261 /dev/loop0 /mnt