[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Add support for specifying the boot device by label
From: |
Oskari Pirhonen |
Subject: |
Re: [PATCH] Add support for specifying the boot device by label |
Date: |
Sun, 10 Sep 2023 16:12:44 -0500 |
On Sun, Sep 10, 2023 at 09:30:24 +0000, darkpenguin wrote:
> Specifying the boot device by its label rather than its UUID can be
> pretty useful in various situations (e.g. multiple test VMs).
>
> This might have to be adapted a little to meet the coding standards I'm
> not familiar with. Please feel free to improve it in any way you want.
>
> This patch works for me on an older version of grub2 (=2.06-13 in Debian
> Bookworm), but it's rather trivial, and only touches two parts that are
> otherwise untouched for ages.
>
> - Specify "GRUB_DISABLE_LINUX_UUID=LABEL" in /etc/default/grub
> - It will attempt to use a label instead of UUID
> - If a device with the necessary label is not found in
> /dev/disk/by-label/ , it falls back to using UUID
> - If you just assigned new labels, run 'partprobe' to populate
> /dev/disk/by-label/ properly
>
> The decision to reuse GRUB_DISABLE_LINUX_UUID was because:
> 1) This is more of an addition on top of UUID rather than "disabling"
> it, it still uses UUID internally, and it falls back to UUID
> 2) I could not come up with a better way to do it
I'm not a fan of overloading a "disable" var to mean "try something else
first". Something like GRUB_DISABLE_LINUX_LABEL with the appropriate
logic would make more sense IMO.
> 3) I could not figure out how to source other variables from
> /etc/defaults/grub and why not all of them are there. :)
>
This looks to be in util/grub-mkconfig.in (lines 160-162 in git master
at the time of writing):
if test -f ${sysconfdir}/default/grub ; then
. ${sysconfdir}/default/grub
fi
The vars then get exported further down (lines 213-258) before running
the various config snippets:
# These are optional, user-defined variables.
export GRUB_DEFAULT \
GRUB_HIDDEN_TIMEOUT \
GRUB_HIDDEN_TIMEOUT_QUIET \
GRUB_TIMEOUT \
GRUB_TIMEOUT_STYLE \
GRUB_DEFAULT_BUTTON \
# ... snip ...
Hope that helps.
- Oskari
signature.asc
Description: PGP signature
Re: [PATCH] Add support for specifying the boot device by label, Vladimir 'phcoder' Serbinenko, 2023/09/10