我有一台运行 Solaris 10 x86 64 位的旧服务器。以前没有出现过问题,但最近它没有完全关闭就断电了。以前从电源端口重新启动时不会出现这个问题,但这次我卡住了。
这是我启动时看到的(左侧部分由于 KVM 软件而被切断)
它不执行任何操作,也不响应任何键盘命令。
我重新启动进入故障安全模式,并收到有关 boot_archive 损坏的错误,因此我重建了它。完成之后尝试重新启动,问题仍然存在。
重新启动进入故障安全模式并检查磁盘是否有错误(格式化、分析、读取这里) 并没有发现任何错误,在驱动器上运行了 fsck,没有任何结果。
尝试安装 grub
cd /a/boot/grub
installgrub -fm stage1 stage2 /dev/rdsk/c0d0s0
然后再次重建启动档案
bootadm update-archive -fv -R /a
输出为
Forced update of archive requested
Cannot find: /a/etc/cluster/nodeid: No such file or directory
Cannot find: /a/etc/devices/mdi_ib_cache: No such file or directory
Creating ram disk for /a
Updating /a/platform/i86pc/boot/boot_archive...this may take a minute
最后卸载 /a 并重新启动
umount /a
reboot
没有改善。关闭后 /a/var/adm/messages 中没有任何内容。还有其他想法或建议吗?我可以在哪里寻找下一步?
在 grub 中设置详细选项,并在启动停止之前查看以下内容。
答案1
虽然启动存档确实已损坏并需要重建,但还存在另一个问题。我用来修复损坏的 boot_archive 的步骤是正确的。
感谢安德鲁斯对我的问题的评论,我能够打开详细输出并查看系统挂起的位置。
我从 grub 菜单中选择了正常启动时使用的菜单项,按“e”进行编辑,然后在内核行再次按“e”,并在末尾添加 -v。按回车保存编辑,然后按“b”启动已编辑的菜单项。
挂起的设备是 pci1458,5004,查看 /etc/device_aliases 后,我发现它是 USB 控制器。搜索后,我看到建议进入 BIOS 并禁用传统 USB 支持。执行此操作后,系统正常启动。服务器上连接了一个新设备,这肯定是导致问题的原因。