Re: Mount multiple-device-filesystem by UUID

Duncan
2013-07-27T22:14:02Z

Hugo Mills posted on Sat, 27 Jul 2013 20:44:48 +0100 as excerpted:

> On Sat, Jul 27, 2013 at 08:52:50PM +0200, Hendrik Friedel wrote:
>> As stated in the wiki, multiple-device filesystems (e.g. raid 1) will
>> only mount after a btfs device scan, or if all devices are passed with
>> the mount options.
>>
>> I remember, that for Ubuntu 12.04 I changed the initrd. But after a
>> re-install, I have to do this again, and I don''t remember how
I did it.
>
>    With Ubuntu, just install the btrfs-tools package. It should modify
> the initrd correctly.
>
>> So, the other option would be passing the devices in the fstab. But
>> here, I''d prefer UUIDs rather than device names, as they can
change.
>
>    This is why we don''t recommend using device= mount flags.
>
>> Is this possible? What is the syntax?
>
>    I don''t believe it is possible. Finding filesystems by UUID is
(I
> think) a userspace-based thing, so you''d have to have an initrd
anyway.

btrfs raid1 root here, was initr*less until I switched to btrfs which is
broken with direct-kernel-root-mount rootflags=device=whatever syntax.

UUIDs are indeed userspace -- udev/systemd.  However, if your initr*
includes udev, at least here, it "just works".

I use root=LABEL=whatever here on the kernel commandline for root, and
LABEL=whatever for non-root in fstab, but as long as udev has the
directory in /dev/disk/*, mount should work with it, so root=UUID=whatever
at the kernel commandline should work, as should UUID=whatever in fstab
as the first field.

--
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman