X86 Solaris 启动失败

X86 Solaris 启动失败

上周末我们停电了,这似乎对我们的一台 x86 Solaris 机器造成了一些非常严重的问题。它拒绝启动,并在启动时将我带到“grub>”提示符。我可以让它识别多重引导内核和模块,它会尝试开始启动,但它几乎立即挂起。这些是我输入的命令及其结果:

grub> 查找 /boot/grub/stage1
 (hd1,0,a)
 (hd2,0,a)
 (hd4,0,a)

grub> 根 (hd1,0,a)

grub> 内核/platform/i86pc/multiboot 内核/unix
   [多引导精灵,<0x1000000:0x141eb:0x128f5>,shtab=0x1027258,entry=0x1000000]

grub> 模块 /platform/i86pc/boot_archive
   [多重引导模块@0x1034000,0x5ed3800 字节]

grub>启动

在我发出启动命令后,终端尝试清除,光标返回到左上角,并且我在第一行看到以下内容:

                             eric_138889-08 32 位     

然后整个系统就挂起了。

自从我使用 Solaris 以来已经过去了很长时间,我不知道下一步该做什么来尝试启动这个野兽——有人可以给我一些建议,告诉我下一步该去哪里/尝试什么吗?

答案1

对于 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 命令更新 boot_archive:

bootadm update-archive -fv -R /a

如果你使用 zfs 文件系统

1)以单用户模式从 Solaris 介质(DVD)启动

2)在 /a 挂载点上导入 ZFS 根池

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 命令更新 boot_archive:

bootadm update-archive -fv -R /a

答案2

这是 Solaris x86/64 上的常见问题。由于非正常关机,看起来boot_archive处于不一致状态。由于 PC 硬件没有 Sun/Oracle 的 OpenBoot,因此在软件中模拟。boot_archive包含该信息。

boot_archive可以找到修复说明这里

相关内容