从 Live CD 挂载 FreeBSD 加密的 ZFS 并找到根分区

从 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 mount zroot/ROOT 但也没有发现任何东西。

其他 ZFS 分区看起来都很好,例如:

# ls /tmp/mounted/usr/ports/
.arcconfig .gitattributes .gitignore CHANGES CONTRIBUTING.md ...

我在哪里可以找到 /boot/loader.conf?

答案1

FreeBSD 论坛上的一位开发人员提供了解决方案,从 Live CD 挂载 FreeBSD 加密的 ZFS 并找到根分区

事实证明,ZFS 中的根文件夹在导入时被标记为“不自动挂载”,尽管所有其他 ZFS 切片都已自动挂载。因此,手动挂载解决了这个问题:

zfs mount zroot/ROOT/default

相关内容