Ubuntu – Installing 12.04 server as a software RAID 1 mirror fails to boot

12.04raidserver

I'm installing a few new Ubuntu Server 12.04 LTS servers, and they have two 512 GB SSDs. I want them to use software RAID 1 mirroring, so I was following this document religiously step by step:

https://help.ubuntu.com/12.04/serverguide/advanced-installation.html

To summarize the above official documentation:

to set up a software RAID 1 mirror in Ubuntu Server, you choose manual partitioning during the setup, and do this on each drive:

  • "swap" partition of roughly RAM size
  • "physical volume for RAID" partition for remaining drive size

After that, you set up the RAID 1 mirror using the RAID partitions on drive A and B, make it ext4 and containing the root filesystem partition.

Setup continues from there just fine.

One caveat: I was completely unable to select the "physical volume for RAID" as bootable. When I tried to do that in setup, it had no effect: I could press enter on the "make bootable" option all day long and nothing would ever change.

However, after install successfully completes, I have a big problem: the system won't boot! I get

Reboot and Select proper boot device
or Insert Boot Media in selected Boot device and press a key

What did I do wrong? Why can't I mark that "physical volume for RAID" partition bootable during Ubuntu Server setup? Is there some way for me to make the physical volumes for RAID bootable after the fact, perhaps from a live CD or something?

Best Answer

Well, I was able to proceed by deviating from the official install docs slightly.

Rather than manually configuring the free space on the two drives, I selected "automatically partition the free space" on each drive.

Note that this caused automatic creation of a 32 GB (equal to RAM size) swap partition, and one large ext4 partition. I changed the ext4 partition to RAID, then I was able to mark it bootable at last!

Ubuntu RAID 1 config

Note the little "B" next to the RAID partition on the first sda drive.

Related Question