解压linux后grub crc错误

解压linux后grub crc错误

我有一个装有 raid1 的 debian。两个硬盘都有可启动标志,并且 Grub 设置在 MBR 中。如果我只使用 sda 启动,linux 就会启动。如果我只使用 sdb 启动,grub 就会出现并显示

Decompressing Linux...
crc error
-- System halted

我已经重新安装了 grub 几次,但仍然没有反应。
它像这样:
/dev/md0 包含 /dev/sda1 /dev/sdb1
find /boot/grub/stage1 显示 (hd0,0) (hd0,1)
启动 Linux 的行显示:
root (hd0,0)
kernel /vmlinuz-2.6.26-1-686
initrd /initrd.img-2.6.26-1-686

这使得我的“冗余”阵列变得毫无用处。
有什么线索吗?

更新:顺便提一下,这是 2 个不同的 HDD,sda 是 320gb,sdb 是 400gb。两者都是 WD,并且都具有完全相同的分区,使用 sfdisk 克隆。

答案1

如果你正确地建立了 raid 并且它完全同步那么很有可能你有坏扇区sdb

输出是什么

cat /proc/mdstat

关于该设备有什么看法?

答案2

我终于设法修复了它。这是一个与硬盘相关的问题,我不得不进入 BIOS,在硬盘选项中禁用Block Mode
然后我继续正常安装:将分区重新添加到阵列,设置 grub。
现在可以从此驱动器启动了。

答案3

root (hd0,0) 
kernel /vmlinuz-2.6.26-1-686 
initrd /initrd.img-2.6.26-1-686

如果这是来自 sdb 上的 grub.conf,则缺少一些重要信息,例如要引导的内容。内核行应该看起来更像这样:

kernel /vmlinuz-2.6.26-1-686 ro root=/dev/sda5

其中 root= 指向包含 /​​ 文件系统的块设备。

此外,如果你要从辅助驱动器启动,则需要指定 grub 实际使用它 - 具体来说,

root (hd1,0)

相关内容