Linux boot on a raid1 software raid?

Solution 1:

When Linux boots up, it first boots a minimal Linux distribution from inside the initramfs. This is just a ram disk with a simple root file system. The initramfs does some initialization, loads all the necessary block device and filesystem drivers, and then mounts the real root file system, pivots into it, and boots from it. It looks like you have your raid device configured properly under the main Linux file system, but not inside the initramfs filesystem.

Its possible to crack open your initramfs (its just a gzip'd cpio archive, make modifications to it and re-archive it. I've often troubleshooted problems like this by changing the initramfs init scripts to just drop to a shell and figure out whats not working. You're initramfs should have been created at the same time as the kernel was built, and usually contains everything needed to bootstrap the system. But especially if the sw raid was added after the system was already running, the build may not have added it properly. Check out the sw raid info in this document:

http://en.gentoo-wiki.com/wiki/Initramfs