如何在启动时自动将 ZFS 池挂载到外部驱动器上

如何在启动时自动将 ZFS 池挂载到外部驱动器上

我最近将 ubuntu 19.04 桌面系统上的一个外部/USB 3.0 硬盘从 ext4 移到了 ZFS。以前,该硬盘会在启动时自动挂载到 /media/user/drive_label。如果我没记错的话,这是由 gnome 自动完成的。

我已将重新格式化的驱动器设置到相同的挂载点,并使用 创建驱动器sudo zpool create -m /media/user/drive_label storage /dev/sdb

它工作正常直到我重启了它。重启后,我需要手动用 导入 fs sudo zpool import storage。一切 - 权限等都运行正常,但我希望无需手动干预即可导入。

在其他文件系统上 - 我会将驱动器添加到 fstab,但看起来 zfs 以不同的方式挂载东西。

如何让 ubuntu 无需启动即可自动挂载/导入驱动器?

答案1

如果驱动器在启动时已连接,请查看服务zfs-import-scan。该服务应在运行时扫描所有连接的磁盘,并导入和安装它找到的池。

答案2

成立Archlinux wiki 中的说明. 由于我以 root 身份安装了 ZFS,因此我实际上可以跳过一些步骤 — — ZED 已经在我的系统上设置好了。

如果有合适的配置文件,zed 将为我填充并自动挂载池。我创建了一个空文件

touch /etc/zfs/zfs-list.cache/storage

ZED 没有将其捡起并填充它,因此我通过禁用和启用池来对其进行了刺激
sudo zfs set canmount=off storage
sudo zfs set canmount=on storage

我重新启动了系统并检查它是否已安装,结果确实如此。

相关内容