I also found this bug.  I installed 12.04.3 LTS Server using md raid1
for root partition on x86-64 box using EFI boot.  The Ubuntu installer
(alternate_amd.iso) sets up partitions /boot/efi and / and swap.

I also found grub installs its EFI app correctly, and it launches at
boot. However, grub can't find the root partition.

I found a different answer on how to patch around this from:
http://askubuntu.com/questions/355727/how-to-install-ubuntu-server-with-
uefi-and-raid1-lvm.  Manually edit /boot/efi/EFI/ubuntu/grub.cfg and
substitute the correct UUID for the sw raid for the bad UUID in this
file.  The system will now reboot, but I haven't tested booting from a
HW off.

What I'm concerned about is "how does this work?"  The bootloader GRUB2
is reading /boot/efi/EFI/ubuntu/grub.cfg from the /boot/efi FAT32 UEFI
partition and executes a command "search_fs_uuid uuid root" which finds
the uuid for the RAID1 md device.  But how does GRUB2 know about sw raid
devices?  The / filesystem is on a RAID1.  GRUB2 needs to load
/boot/grub/grub.cfg and run it.

My hypothesis is GRUB2 goes to the md superblock and finds the uuids for
the devices in the raid, goes to one of those, and since it is mirrored
(RAID1), can fetch from /boot/grub.  Is that right?

Perhaps this bug is easily fixed by the installer making the UEFI FAT32
partition be at /boot instead of /boot/efi.  In that case,
/boot/grub/grub.cfg will be in the UEFI partition and GRUB2 will always
know how to access it even if / is  RAID5.

Can anyone confirm this line of thinking?

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1229738

Title:
  grub doesn't boot with efi and md raid root

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1229738/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to