Freebsd
從 live CD 掛載 FreeBSD 加密的 ZFS 並找到根分區
我按照菜單安裝了帶有加密 ZFS 的 FreeBSD 11。系統正常使用了幾天后,我在 /boot/loader.conf 中弄亂了一些東西,所以無法啟動。我搜尋並恢復的方法是從 live CD 啟動並鍵入:
# cd /tmp/ # mkdir mounted # geli attach /dev/ada0p3 # zpool import -f -R /tmp/mounted zroot
它起作用了,這就是 ZFS 的樣子
# zfs list NAME USED AVAIL REFER MOUNTPOINT zroot 5.64G 223G 96K /tmp/mounted/zroot zroot/ROOT 4.05G 223G 96K none zroot/ROOT/default 4.05G 223G 4.05G /tmp/mounted zroot/tmp 124K 223G 124K /tmp/mounted/tmp zroot/usr 1.58G 223G 96K /tmp/mounted/usr zroot/usr/home 373M 223G 373M /tmp/mounted/usr/home zroot/usr/ports 642M 223G 642M /tmp/mounted/usr/ports zroot/usr/src 608M 223G 608M /tmp/mounted/usr/src zroot/var 1020K 223G 96K /tmp/mounted/var zroot/var/audit 96K 223G 96K /tmp/mounted/var/audit zroot/var/crash 96K 223G 96K /tmp/mounted/var/crash zroot/var/log 512K 223G 512K /tmp/mounted/var/log zroot/var/mail 120K 223G 120K /tmp/mounted/var/mail zroot/var/tmp 100K 223G 100K /tmp/mounted/var/tmp
但是,我找不到 /boot/loader.conf !以下目錄為空(其他 ZFS 掛載點除外):
# ls /tmp/mounted/ tmp usr var zroot # ls /tmp/mounted/zroot/ #
我相信我也嘗試在其他地方安裝 zfs 掛載 zroot/ROOT,但在那裡什麼也沒找到。
其他 ZFS 分區看起來都很好,例如:
# ls /tmp/mounted/usr/ports/ .arcconfig .gitattributes .gitignore CHANGES CONTRIBUTING.md ...
我在哪裡可以找到 /boot/loader.conf?
FreeBSD 論壇上的開發人員提供了解決方案,從 live CD 掛載 FreeBSD 加密 ZFS 並找到根分區
事實證明,ZFS 中的根文件夾在導入時被標記為不自動掛載,即使所有其他 ZFS 切片都已自動掛載。所以手動安裝它解決了它:
zfs mount zroot/ROOT/default