如何使用 zfs root 自動掛載其他池?

如何使用 zfs root 自動掛載其他池?

在瀏覽所有關於此的舊建議時,似乎一切都不再意味著,例如啟用zfs-import.service

# systemctl enable zfs-import.service
Synchronizing state of zfs-import.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable zfs-import
Failed to enable unit: Unit file /lib/systemd/system/zfs-import.service is masked.

由於 zfs 支援在此版本中發生了明顯變化,因此不僅自動掛載根(運作良好)而且自動掛載其他池的適當方法是什麼?

答案1

解決方法

這個解決方法的靈感來自於此關聯,必須調整解決方案才能與 cron 守護程式版本一起使用,如下所示:

在 /etc/crontab 中新增以下行

@reboot root zpool import -d /dev/disk/by-id <pool-name> >> /dev/null
# ex.: @reboot root zpool import -d /dev/disk/by-id tank/videos >> /dev/null

網路上有很多貼文針對不同的 Ubuntu 或(甚至其他 Linux)發行版提出了相同的問題。

我花了幾週時間才找到這個解決方法,因為所有建議的解決方案都不適合我。

再次強調,考慮到 Linux 上 zfs 的當前狀態以及 Ubuntu 19.10 上的「實驗」狀態,在開發正式解決方案之前,這只是一種「解決方法」。

相關內容