On 2023-09-21, Jack <ostrof...@users.sourceforge.net> wrote:
>
>> [...] Of course I've discovered for the Nth time in the past 10-15
>> years, that for the root= command line argument, the kernel doesn't
>> grok LABEL or UUID values -- it only understands device names and
>> PARTUUID.
>
> while my Gentoo grub.cfg has root=PARTUUID=, my Artix Linux install
> (using openrc) has root=UUID=.  I wasn't aware they had mucked with
> grub (2.12-rc1) nor do I know if it's a recent change in grub.

AFAIK, it's not grub (grub does know how to handle LABEL and UUID when
setting grub's root).  For the kernel, it's something in the initrd's
'init' executable that parses the root=UUID= or root=LABEL=, searches
the available filesystems to find a match, then mounts the matching
filesystem and does a chroot to it (or someting like that).

If you don't have an initrd, then the kernel itself has to handle the
root=<whatever> and that code only knows about device names and
partition UUIDs. It doesn't know anything about filesystems (which
doesn't make much sense, since the next step is to mount the specified
partition, and it obviously knows about filesystems at that point).

At least that's what I've read...


Reply via email to