Я понимаю, что есть несколько тем по этому поводу, но моя проблема кажется особенной.
Недавно мой загрузочный диск, SSD, вышел из строя, и я только что восстановил его. Учитывая возможность, я подумал, что могу пойти дальше и собрать его с помощью загрузочного устройства ZFS (т.е. «root on ZFS»). Я установил gptzfsboot
и pmbr
с помощью gpart bootcode
. Но когда я пытался загрузиться, я получаю известное сообщение об ошибке «BTX остановлен» с содержимым регистров. При нескольких попытках появилось сообщение вроде «Не удается найти том ZFS».
Я читал, что это, как думают, связано с каким-то взаимодействием с BIOS и FreeBSD, поэтому я попытался войти в BIOS, чтобы повозиться. К сожалению, похоже, что проблема с материнской платой или BIOS, потому что я не могу получить доступ к меню. Но я могу нормально загружаться с моего живого USB, и кажется маловероятным, что что-то существенное изменилось с материнской платой, поскольку это было бы огромным совпадением с отказом SSD. В любом случае мне сейчас неинтересно возиться с BIOS, и я просто хотел бы вернуть систему на прежнее место.
Живой USB-накопитель, который я использую, является копией установщика memstick, за исключением того, что основной раздел заменен моей собственной установкой FreeBSD. Я думаю, он использует UEFI, поскольку его первый раздел - это «efi», но я не настраивал его вручную, поэтому я не уверен, в чем именно разница между этим и устройством, с которого я пытаюсь загрузиться.
Поскольку я понял, что моя проблема BTX Halted, возможно, связана с root в ZFS, я решил попробовать гибридный подход, в котором у меня есть корневая файловая система UFS и пул ZFS для других данных, монтируемых из fstab. Однако это приводит к той же ошибке остановки BTX. (Не включает какие-либо другие сообщения вверху, как это иногда бывало раньше, например «Не могу найти том ZFS»). Эта альтернатива была настроена с помощью gptboot вместо gptzfsboot (т.е. gpart bootcode -b pmbr -p gptboot -i $index $device
).
Теперь есть еще одна вещь, о которой я должен упомянуть только для полноты, что в ядре могло быть повреждение (хотя маловероятно), поскольку мне пришлось выборочно переустановить несколько модулей в ядре из-за повреждения на исходном устройстве. Я считаю, что это не имеет значения, потому что BTX halted
ошибка происходит в загрузчике до того, как было затронуто ядро.
Поскольку Live USB работает нормально, следующим шагом будет использование его в качестве «тестового примера», начиная с него на моем загрузочном устройстве и постепенно добавляя на него то, что я хочу, пока я не выясню, что вызывает ошибку. Я не уверен, как настроить загрузку efi, поскольку исходный неисправный SSD использовал GPT (на самом деле он использовал руководство `` загрузка на SSD '' на веб-сайте FreeBSD, которое я сейчас не могу найти), и я никогда не настраивал эфи.
Однако, прежде чем я начну этот следующий шаг, я надеялся получить некоторые сведения о том, что происходит, поскольку сборка диска небольшими приращениями займет много времени, и было бы предпочтительнее, если бы он не был потрачен впустую.
Спасибо