Как загрузить систему FreeBSD с поврежденным bootcode?

По моему скромному мнению, даже для того, чтобы сделать именованные каналы, mkfifo управляют быть лучше, чем mknod. Один, это сам описательное в, он - имя, Во-вторых, это разрешает-m опции переопределить umask настройки.

8
06.11.2013, 23:29
1 ответ

Предположение, что существует 512-байтовый подобный DOS MBR, и Вы заменили первые 446 байтов из него с небольшим количеством дерьма (нули или просто /dev/urandom вывод), или поврежденный bootcode некоторый другой путь. В этом случае идет таблица разделов MBR, это - место, но система не может загрузиться от этого устройства.

Идея состоит в том, чтобы использовать загрузчик другой подобной BSD системы для начальной загрузки с устройством и ядром.

  • Необходимо начать загружаться к любой подобной BSD ОС (я попробовал FreeBSD 6.0, 7.0, 8.0, 8.1, 8.2, 8.3, 8.4, 9.2 и Безумство 1.4) от другого жесткого диска, CD, флеш-накопителя, PXE, виртуального носителя через BMC/KVM, и т.д.
  • Во время опции "Escape to loader prompt" хита процесса начальной загрузки на экране загрузчика (это было бы "6" в более старых системах FreeBSD, "3" в FreeBSD 9, "8" в Безумстве),
  • Разгрузите ядро, и это - модули путем ввода unload
  • Узнайте устройство, от которого Вы хотите загрузить свой FreeBSD (обычно что-то как disk0s1a) путем ввода lsdev
  • Установите это устройство, "текущее" путем ввода set currdev="disk0s1a"
  • Перечитать loder.conf от Вашего устройства (чтобы быть уверенным, что все Ваши настройки ядра и взломы применялись бы) путем ввода read-conf boot/loader.conf
  • Запустите ОС и наслаждайтесь - просто вводят boot-conf

Когда Ваша ОС запускается, Вы могли восстановить bootcode. Я использую sysinstall для него (Пользовательский-> Раздел, W, <Yes>, BootMgr ("Устанавливают диспетчер начальной загрузки FreeBSD"), <OK>, Q, <Exit>, <Exit Install>), но это удерживается от использования с тех пор С 9.0 ВЫПУСКАМИ и удаленное из основы с тех пор С 10.0 ВЫПУСКАМИ. Другой путь состоит в том, чтобы использовать резервное копирование, сохраненное в /boot, извлечь bootcode из него:

# gpart bootcode -b /boot/mbr /dev/yourbootdevice
13
27.01.2020, 20:10

Теги

Похожие вопросы