使用 ZFS 根安装时,需要哪些分区canmount=noauto
以及为什么?
我正在查看 Ubuntu 20.04 的全新安装,其中 root 端有 ZFS。我正在使用 openzfs 网站上的这些说明,但有一件事我不明白,这让我很烦恼。
来自指南:
3.2 为根文件系统和启动文件系统创建文件系统数据集:
zfs create -o canmount=noauto -o mountpoint=/ rpool/ROOT/ubuntu zfs mount rpool/ROOT/ubuntu zfs create -o canmount=noauto -o mountpoint=/boot bpool/BOOT/ubuntu zfs mount bpool/BOOT/ubuntu
对于 ZFS,通常不需要使用 mount 命令(mount 或 zfs mount)。由于 canmount=noauto,这种情况是个例外。
我理解这noauto
意味着需要 fstab 或 mount 命令来挂载卷。但我不明白为什么对于某些数据集这是必要的/推荐的,而对于其他数据集则不是。有人能帮我理解一下吗?
答案1
本教程本身解释了为什么这样做/boot
:
/boot
在 initramfs 中支持挂载之前,我们还需要挂载它,因为它被标记为canmount=noauto
。此外,对于 UEFI,我们需要确保它在其子文件系统 之前挂载/boot/efi
。
因此它指导您配置一个/etc/fstab
条目。
通常,作为管理员,您会设置canmount=noauto
何时希望数据集可挂载,但在导入 zpool 时不会自动挂载。例如,包含备份的 zpool 就是一个很好的用例。