Сбой загрузки X86 Solaris
В прошлые выходные у нас было отключение электроэнергии, что, похоже, привело к очень плохим последствиям для одной из наших машин x86 Solaris. Он отказывается загружаться и при запуске выдает сообщение "grub>". Я могу заставить его распознать ядро и модуль мультизагрузки, и он попытается начать загрузку, но зависает почти сразу. Это команды, которые я ввожу, и их результаты:
grub> find / boot / grub / stage1 (Hd1,0, а) (Hd2,0, а) (Hd4,0, а) grub> root (hd1,0, a) grub> kernel / platform / i86pc / multiboot kernel / unix [Multiboot-elf, <0x1000000: 0x141eb: 0x128f5>, shtab = 0x1027258, запись = 0x1000000] grub> module / platform / i86pc / boot_archive [Multiboot-модуль @ 0x1034000, 0x5ed3800 байт] grub> boot
После того, как я ввел команду загрузки, терминал пытается очистить, курсор возвращается в верхний левый угол, и я вижу это в верхней строке:
eric_138889-08 32-разрядная версия
и тогда вся система зависает.
Прошло достаточно много времени с тех пор, как я ткнул в Солярис, что я понятия не имею, что делать дальше, чтобы попытаться загрузить этого зверя - кто-нибудь может дать мне несколько советов о том, куда идти / что попробовать дальше?
2 ответа
Для файловой системы UFS
1) загрузка с носителя Solaris (DVD) в однопользовательском режиме
2) Смонтируйте корневую файловую систему в /a, например:
mount /dev/dsk/c0t0d0s0 /a
3) Установите grub и обновите файл boot_archive на своих загрузочных дисках:
cd /a/boot/grub
installgrub -fm stage1 stage2 /dev/rdsk/c0t0d0s0
4) обновите загрузочный архив с помощью команды bootadm:
bootadm update-archive -fv -R /a
если вы используете файловую систему zfs
1) загрузка с носителя Solaris (DVD) в однопользовательском режиме
2) Импортируйте корневой пул ZFS в точку монтирования / a
zpool import -R /a rpool
3) Смонтируйте набор данных, который содержит операционную систему
zfs mount rpool/ROOT/sol10-u10
4) Установите grub и обновите файл boot_archive на своих загрузочных дисках:
cd /a/boot/grub
installgrub -fm stage1 stage2 /dev/rdsk/c0t0d0s0
5) обновите загрузочный архив с помощью команды bootadm:
bootadm update-archive -fv -R /a
Это распространенная проблема в Solaris x86/64. Выглядит как boot_archive
находится в противоречивом состоянии из-за неуместного отключения. Поскольку аппаратное обеспечение ПК не имеет OpenBoot от Sun / Oracle, оно эмулируется программно. boot_archive
содержит эту информацию.
Инструкция по исправлению boot_archive
можно найти здесь.