Answers:
我有以下情况:
我将FreeBSD 10.1 USB .img文件安装到1GB棒上并将FreeBSD安装到16GB棒上。被认为是1GB的棒/dev/da0,而16GB的棒被认为是/dev/da1。FreeBSD安装到16GB以下/dev/da1s2a。然后我删除1GB棒 - 通常无法自动启动到FreeBSD系统。系统说无法启动vfs.root.mountfrom="/dev/da1s2a",但是让我手动启动进入FreeBSD,所以我不得不将启动切片更改为/dev/da0s2a,并且工作正常。当然,我不想手动完成,所以我找到了这篇文章。
它启发我搜索变量的位置vfs.root.mountfrom,所以我重新启动系统,拉出16GB棒,放回1GB棒,从它作为Live CD启动。此时,我放回16GB棒,安装它(mount /dev/da1s2a /mnt)并搜索“vfs.root.mountfrom”。我的发现是:
/boot/loader.conf文件!/boot/defaults/loader.conf文件!因为做那些事会搞乱装载机!
解决的办法是在调整/etc/fstab上/mnt(16GB棒)改变输入/dev/da1s2a到/dev/da0s2a/作为装载机正在寻找的fstab文件系统在fstab启动过程中,并自动写入的值vfs.Root.Mountfrom变!
所以在重启期间我删除了1GB棒,机器成功启动了FreeBSD!
文件/boot/loader.conf包含以root用户身份挂载文件系统的说明。
检查此文件是否为enrty:
vfs.root.mountfrom="ufs:ad6s1a"
并调整它(如果它缺少则添加它):
vfs.root.mountfrom="ufs:ad4s1a"
(假设设备4的片1的分区a)
我想你想改变/boot.config。
请参见boot.config手册页。
它表明你想要的东西
echo "1:ad(4,a)/boot/loader" > /boot.config
但是首先看看文件/dev/ad6是什么,然后找出/dev/ad4应该是什么。
/etc/disktab和bsdlabel -B?/boot/kernel.conf?