![启动 Nexenta 根镜像导致 GRUB 错误“文件系统类型未知,分区类型 0xbf”](https://linux22.com/image/545884/%E5%90%AF%E5%8A%A8%20Nexenta%20%E6%A0%B9%E9%95%9C%E5%83%8F%E5%AF%BC%E8%87%B4%20GRUB%20%E9%94%99%E8%AF%AF%E2%80%9C%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%B1%BB%E5%9E%8B%E6%9C%AA%E7%9F%A5%EF%BC%8C%E5%88%86%E5%8C%BA%E7%B1%BB%E5%9E%8B%200xbf%E2%80%9D.png)
我有一个 Nexenta 系统,过去几年运行良好。最近其中一个系统磁盘出现故障 --- syspool 是 ZFS 镜像的一部分。
如果我将系统的 BIOS 配置为从工作驱动器启动,则屏幕上会出现文本GRUB
(“GRUB”后跟一个空格),并且系统没有响应。
如果我从 Nexenta 安装 CDROM 启动并尝试按如下方式设置根目录:
root (hd1,0,a)
...我从 GRUB 收到以下消息:
Filesystem type unknown, partition type 0xbf
root
但是,如果我在全新安装的 Nexenta 上发出上述命令,我将看到:
Filesystem type zfs, partition type 0xbf
我如何才能让 GRUB 识别幸存的根镜像磁盘,以便我可以从中启动?并且,将来,当根镜像中的设备发生故障时,我应该遵循什么程序,以便我可以正确恢复(并从镜像池中的任何驱动器启动)?
答案1
这听起来很像我在 Nexenta 安装中遇到的问题。我最近对syspool
和其他池都进行了 ZFS 版本升级,但之后未能重新安装 grub。结果是下一次断电导致 grub 无法读取 ZFS 文件系统,系统无法启动。
有Nexenta 上的讨论这帮助了我。
基本上,我通过从支持最新 ZFS 版本的最新 Nexenta LiveCD 启动来修复它,然后运行
installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/[disk id here]
在我的 syspool 磁盘上。重新启动后,新的 grub 现在可以读取磁盘并启动系统。