Comment 6 for bug 623609

Revision history for this message
Scott Moser (smoser) wrote :

Some more info here. Again, the failure of 'update-grub' in an ec2 instance is because grub-mkconfig is called in update-grub. grub-mkconfig in one way or another ends up calling grub-probe, and grub-probe exiting failure.

The first call to grub-probe that is failing for me is from
 /etc/grub.d/10_linux ->
   /usr/lib/grub/grub-mkconfig_lib : prepare_grub_to_access_device()
  which runs
   grub-probe --device ${device} --target=drive
  At that point grub-probe is the result of '${grub_probe} --target=device /' (which is '/dev/sda1').

The reason for this failure I think is because there *is* no /dev/sda in our ec2 instances. The reason for that is 2 fold:
a.) a patch in the kernel renames xen devices from xvd* to sd*
b.) the xen para virtutal device that is named 'sda1' is not actually a partition at all, but a disk. It just has a funny name. (ie, in /sys you'll see that this is indeed a disk and not a partition).

I'm guessing its a bad assumption in grub code due to a or b above that is causing the failure.