Редактировать: как кто-то заметил в этой теме , проблема в том, что процесс загрузки в какой-то момент хочет смонтировать корневую файловую систему с устройства обратной петли так, как это невозможно с функциональностью обратной связи GRUB. Обратите внимание, что PC-BSD был переименован в TrueOS и теперь они предлагают образы USB.
Я не слишком знаком с BSD, и я не могу найти ничего о BSD в статье о загрузочных USB-дисках Arch , хотя в статье о GRUB у них есть 3 способа , по крайней мере, один должен работать при адаптации к устройствам, монтируемым в петле:
Цепная загрузка встроенной загрузочной записи
menuentry 'FreeBSD' {
insmod ufs2
set root='hd0,gpt4,bsd1'
chainloader +1
}
Это кажется простым, и загрузка соответствующего модуля файловой системы кажется хорошей идеей, но помните, что на оптическом носителе есть ISO 9660 или UDF, и, насколько мне известно, нет разделов, кроме El Torito.
Запуск традиционного загрузчика 2-й ступени BSD
menuentry 'FreeBSD' {
insmod ufs2
set root='(hd0,4)'
kfreebsd /boot/loader
}
Это почти то, что вы сделали просто как статическая конфигурация без вызова поиска.
Загрузка ядра напрямую
menuentry 'FreeBSD' {
insmod ufs2
set root='hd0,gpt4,bsd1'
## or 'hd0,msdos4,bsd1', if using an IBM-PC (MS-DOS) style partition table
kfreebsd /boot/kernel/kernel
kfreebsd_loadenv /boot/device.hints
set kFreeBSD.vfs.root.mountfrom=ufs:/dev/ada0s4a
set kFreeBSD.vfs.root.mountfrom.options=rw
}
Это выглядит удивительно сложным. Я только что прочитал загрузку PC-BSD 10.3 iso, надеюсь, я найду время поиграть с ним, чтобы выяснить, как заставить его работать через UEFI или устаревшую версию в ближайшие несколько дней.
ls
даетopen '/' failed: no such file or directory
. Интересно, как работает загрузчик, пока (видимо) рут не найден?