Тестовый стенд: FreeBSD 8.X, 9.X, 10.X
1) Не загружается ядро.
Если вдруг что-то случилось с текущим ядром, то можно попробовать загрузить старое (если конечно оно есть). Делается это так: после старта зарузчика и появления меню нажимаем 3 (FreeBSD 9.X, 10.X) или 6 (FreeBSD 8.x). Теперь нам доступна консоль с командами. Список ядер можно посмотреть, выполнив команду
ls /boot
В выводе смотрим наши ядра. Допустим, наше старое ядро называется kernel.old и находится в /boot/kernel.old. И так, ход действий такой:
– выгрузить текущее ядро:
unload kernel
– загрузить старое ядро (именно файл самого ядра, а не папку, где оно лежит):
load /boot/kernel.old/kernel
– запустить загрузку ОС:
boot
После этого пойдёт загрузка старого ядра.
Примечание.
Начиная с 10.1 в загрузчике появился пункт меню (цифра 5) с выбором ядра для загрузки, что делает загрузку с новым ядром ещё проще.
Кстати, в загрузчике OK достаточно команд, что бы манипулировать загрузкой драйверов, смотреть текущие настройки и прочие команды, что бы попытаться реанимировать ОС.
А вот метод для загрузки ZFS-only (взял отсюда)
Правильный и документированный способ:
unload
boot [-s -v] kernel.old
Долгий и недокументированный:
unload
load /boot/kernel.old/kernel
load /boot/kernel.old/opensolaris.ko
load /boot/kernel.old/zfs.ko
load -t /boot/zfs/zpool.cache /boot/zfs/zpool.cache
boot [-s -v]
2) Не монтирует корень ФС
Вы попадаете в приглашение mountroot. Что же делать дальше, если, допустим, вы не помните название разделов, где находится корень. В том же mountroot пишется подсказка:
? List valid disk boot devices
Набираем знак вопрос и тут же показываются все доступные разделы. Осталось только найти нужный и ввести приблизительно так:
mountroot> ufs:/dev/ada1
и нажать Enter. Если вы ввели правильно загрузится ОС. Если остальные точки монтирования содержат ошибки, то вас выкинет в single mode (о нём речь пойдёт ниже). Если не угадали с разделом, пробудем ещё, до тех пор, пока не найдём нужный раздел.
3) Прочие ошибки и Single mode
Если возникли прочие ошибки и система попала в Single mode сама или вам нужно загрузить её принудительно, то в меню загрузчика нажимаем 2 (FreeBSD 9.X, 10.X) или 4 (FreeBSD 8.x) и получаем приглашение:
Enter full pathname of shell or RETURN for /bin/sh
Нажимаем Enter и попадаем в single mode. В этом режиме смонтирован только корень и то, в режиме ReadOnly. Нужно его перемонтировать в режим RW:
# mount -o rw /
Монтируем остальные ФС (если есть необходимость; инфа при этом берётся из /etc/fstab):
# mount -a
Теперь можно даже запустить bash или любую другую оболочку обычным образом. Но если, допустим, система повреждена и не получается запустить любимую оболочку, останемся работать в sh, при этом нужно её запустить так:
# sh -E
Этим мы включим работу стрелок (вверх/вниз) при работе с историей команд, что будет очень удобно.
Если после single mode нужно загрузится дальше в ОС, то просто пишем exit.
Invalid signature in boot block -> here
=================================================================
А здесь описан процесс загрузки FreeBSD