Sudev Barar wrote:
On 06/12/06, Karl R. Balsmeier karl@klxsystems.net wrote:
The reason why booting fails is most likely due to the fact that your BIOS is attempting to emulate (in software) RAID-5 volume when loading boot loader, kernel and initrd image. While in reality those are probably stored on your first drive.
Copying over bootloader/grub on to all drives would then solve this?
No. It won't solve it.
Let say you configured fake-RAID, level 5, with stripe size of 64kB in the BIOS.
The installation was done onto first disk, since that is what Linux saw (4 individual drives). The BIOS thinks that what you have is 4 drives in software RAID-5, because that's how it was configured.
Depending on the location of RAID metadata on the drives, and other things, BIOS might load bootloader from MBR. MBR is in the first stripe, so it's in the same place on the first drive be it RAID-5 volume or single drive.
Bootloader than attempts to load stuff from your filesystems. It has to use BIOS calls. Now let say it needs to read first few MB from the disk (to load stage2, to load kernel, or whatever, not important what). That stuff is written by Linux on the first drive. What BIOS will do, it will read first 64k from disk 1, next 64k from disk2, next 64k from disk3, next 64k from disk2 and so on. Why? Because it thinks it is RAID-5 volume, and it attempts to emulate RAID-5. Of course, this is completely wrong. There's nothing on disks 2, 3 and 4.
Not to mention couple of other things. The checksums for RAID-5 will be completely wrong, if BIOS bothers to check them on reads at all. The partition table will be bogus (it was generated by Linux for single drive, and BIOS thinks it is RAID-5 volume). And so on, and so on...