grub crc在解压缩linux后出错

我有一个raid1的debian。 这两个硬盘驱动器都有可启动的标志和MBR中的grub设置。 如果我只用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

这种渲染我的“冗余”arrays是无用的。
任何线索?

更新:只要提及,这些是2个不同的硬盘,sda是320GB和sdb是400GB。 这两个都是WD,都有完全相同的分区,使用sfdisk克隆。

如果你build立了正确的raid并且它完全同步,那么你在sdb上有一些坏扇区的可能性很高。

输出是什么?

 cat /proc/mdstat 

说关于设备?

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

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

如果这是来自sdb上的grub.conf,那么它缺less一些重要的信息,比如启动什么。 内核行应该看起来更像这样:

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

root =指向包含/ filesystem的块设备。

另外,如果从第二个驱动器启动,则需要指定grub实际使用它 – 具体而言,

 root (hd1,0)