[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

GPT + RAID + boot



My goal here is to be able to have a bootable, running system in the
event of a disk failure.  I've been running two disks in a RAID-1
configuration, with grub installed on both disks, for some time.  My
/etc/mdadm/mdadm.conf is essentially empty, as mdadm has been
successfully finding my RAID partitions and assembling my arrays at boot
time without it.

I've gotten a new 3TB disk (to replacing an old, failing disk), so I'm
setting up my first GPT partition table.

On my old (MBR) disk, parted shows my first partition as

1      32.3kB  1500GB  1500GB  primary                  boot, raid

and I'm able to boot successfully.

On my new (GPT) disk, I am only able to install grub if I've set the
bios_grub flag (note that this flag doesn't appear in the man page,
though it does appear in the documentaiton at
http://www.gnu.org/software/parted/manual/parted.html#set) on my
partition.  If I set the boot or legacy_boot flags, I get

snowball:518$ sudo grub-install /dev/sdb
/usr/sbin/grub-setup: warn: This GPT partition label has no BIOS Boot Partition; embedding won't be possible!.
/usr/sbin/grub-setup: error: embedding is not possible, but this is required for cross-disk install.

Unfortunately, I don't seem to be able to set both the bios_grub and the
raid flags at the same time.  If I set the bios_grub flag, printing the
partition table shows no raid flag; if I set the raid flag, printing the
partition table shows no bios_grub flag.

Booting with the bios_grub flag set, my raid array isn't assembled
properly:  the partition with bios_grub set isn't added into the array
(fortunately, my other disk is good!).

So:  how can I go about setting up my new disk so I will have a two-disk
RAID array if both disks are good, and be able to boot with a degraded
array in the event of either disk failing?
-- 
"Erwin, have you seen the cat?" -- Mrs. Shroedinger


Reply to: