Modify EFI Boot Name

I have an EFI-based multi-boot system, where I have a main Fedora system and one meant for recovery. When I see the options in the BIOS, I only get “Fedora” displayed without version or which disk it is located on.

Is there a way for me to adjust the display of the EFI boot entry (e.g. when running the GRUB updater or similar) to get a better differentiation?

I would not mind if I have to do it every time I upgrade to a new kernel or whatever holds this post-modification when updated.

You should be able to use efibootmgr - unfortunately, I think you cannot change the label of an existing entry, but you can delete an entry and recreate it with a new label.

Proceed with caution.
Install the package efibootmgr, then get the parameters of your current entries (the following example outputs are from my Arch system, but Fedora will look very similar):

ce@kat ~ % efibootmgr -v
BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0000,0003,000B,0007
Boot0000* GRUB-kat	HD(1,GPT,575d768c-8e5a-4e1e-bf0d-e23ece5304a5,0x800,0x100000)/File(\EFI\GRUB-kat\grubx64.efi)
Boot0003* Samsung SSD 850 EVO M.2 250GB	BBS(HD,,0x0)..BO
Boot0007* HL-DT-ST BD-RE  BH16NS55	BBS(CDROM,,0x0)..BO
Boot000B* ST4000DM000-2AE166	BBS(HD,,0x0)..BO

You’ll need the Boot<bootid> ID & File(<path-to-grub-image>) entries, 0000 and \EFI\GRUB-kat\grubx64.efi in my example output above. Then you can delete the Fedora entry:

ce@kat ~ % sudo efibootmgr -b <bootid> -B

and recreate it with the new label

ce@kat ~ % sudo efibootmgr -c -l '<path-to-grub-image>' -L <new label>

The path needs to be specified with \ instead of /, for reasons. The new entry should get the same ID as the old one, so your boot order etc. should be unchanged. If not, you can adapt it using efibootmgr afterwards.

A somewhat safer pathway would be to first create the new entry and then delete the old once you know the new one works. In that case you definitely will have to adapt the boot order, because the new entry will have a new boot id.

1 Like

While I already used efibootmgr to wipe all entries, if after an installation (or a few more) there are too many and I leave it to the BIOS to recover, I never successfully added an entry. Your example and my discovery that I can actually add entries through my BIOS helped me learn how to properly use this tool.

I now wrote a small script, which does all that (wiping and re-creating entries) in one go and it works flawlessly.

Thank you!

Hi.  One can change the existing entries: /boot/loader/entries.

That changes the entries of the GRUB boot menu, but not those of the EFI menu.

1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.