Comment 37 for bug 54002

Revision history for this message
Dominik Kubla (dbkubla) wrote : Re: [Bug 54002] LVM/MD root filesystem not found by uuid

Am Monday 11 September 2006 21:11 schrieb Scott James Remnant:

>
> break=mount on the kernel command-line.
>

Yup. Google already told me about that. Nice.

> > 2. update-grub changes MD to mount by UUID even so it does not work at
> > the moment. This one is rather easy to fix:
>
> I'd rather fix #1. and make mount-by-UUID work.

I doubt that this is possible for all valid configurations. I could name at
least six valid configurations/situations where it will not work out of the
box, will not work ever or will have side-effects so severe that it will lead
to an immediate ban of all Ubuntu installations by the authorities.

But for the problem at hand I think I may have found it. It looks like you
have a circular dependency in /scripts/local-top:

I did a boot with break=mount, then sourced scripts/functions and executed
run_scripts scripts/local-top. Then I checked /dev/disk. There were only
directories by-id and by-path, no by-uuid.

md depends on udev. So udev will be called first. But it will not create
by-UUID entries for RAID components. mdrun has not been executed at this time
so it will also not create by-uuid entries for the MD devices.

Then md starts the RAID devices but udev already ran so the device links will
never be created and the "mount root" step will wait forever for the device
files to appear.

So I think you will have top put /dev/md* on the exclusion list as well. And
that pretty much limits your new booting scheme to desktop systems without
fault-tolerance or recovery features. Given the fact that Ubuntu now also
targets the Enterprise desktop and server markets I'd have to say: Forget
mount by-uuid.

Regards,
  Dominik
--
Be at war with your vices, at peace with your neighbours, and let every new
year find you a better man. (Benjamin Franklin, 1706-1790)