You are not logged in.
I have an old / redundant entry in my EFI boot partition - how do I remove this?
It's not causing an error but I would rather remove it.
When installing arch I re-used an existing EFI boot partition rather than creating a new one - the old entry from the previous OS is still there, though that OS is gone. (I select which OS to boot by setting the bios 'boot order' and the entry shows there.)
Thanks for any help
Last edited by mytArch (2024-12-28 22:53:08)
Offline
The entries aren't stored on the partition, they're stored in NVRAM on the motherboard. You edit them with efibootmgr.
Online
Thanks I'll give that a shot.
Offline
Do I need to clear CMOS after deleting with efibootmgr?
Followed the directions, efibootmgr now reports the redundant entry is gone but it still shows up in bios.
The remaining entries work fine.
Last edited by mytArch (2024-11-16 04:45:19)
Offline
No, once it's gone it should be gone. What are you seeing, exactly?
Online
sudo efibootmgr
Now you should see all entries in your efi. After that remove entry which you do not need:
sudo efibootmgr --delete-bootnum --bootnum "X"
where "X" is number of entry. For example you have 0000, 0001, 0002, and X = 0 or 1 or 2...
I do not speak English, but I understand...
Offline
I do the following, reboot, the fedora entry is back in the bios boot list and reported again by efibootmgr after I log in.
[x@Arch ~]$ sudo efibootmgr
[sudo] password for x:
BootCurrent: 0001
Timeout: 1 seconds
BootOrder: 0001,0002,0003
Boot0001* GRUB HD(1,GPT,b5e...c000)/\EFI\GRUB\GRUBX64.EFI
Boot0002* Windows Boot Manager HD(1,GPT,e28e1741...)/\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI5...fff0400
Boot0003* Fedora HD(1,GPT,b5e...7cd,0x800,0x12c000)/\EFI\FEDORA\SHIM.EFI0000424f
[x@Arch ~]$ sudo efibootmgr --delete-bootnum --bootnum 3
BootCurrent: 0001
Timeout: 1 seconds
BootOrder: 0001,0002
Boot0001* GRUB HD(1,GPT,b5e...c000)/\EFI\GRUB\GRUBX64.EFI
Boot0002* Windows Boot Manager HD(1,GPT,e28e1741...)/\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI5...fff0400
[x@Arch ~]$ sudo efibootmgr
BootCurrent: 0001
Timeout: 1 seconds
BootOrder: 0001,0002
Boot0001* GRUB HD(1,GPT,b5e...cd,0x800,0x12c000)/\EFI\GRUB\GRUBX64.EFI
Boot0002* Windows Boot Manager HD(1,GPT,e28e1741...)/\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI57494e444f5753...fff0400
Behaves like malware.
I think I should wipe the drive clean and see what happens.
Last edited by mytArch (2024-11-16 08:06:59)
Offline
Behaves like malware.
I think I should wipe the drive clean and see what happen
It is not malware. Some EFI implementations of motherboards are unreachable by some efibootmgr commands and this I assume is a fault in the EFI implementation by the motherboard vendors. I know this because I have one such motherboards. I can't update my NVRAM entries via efibootmgr. However using UEFI shell works so you can try using a UEFI Shell:
https://wiki.archlinux.org/title/Unifie … _Interface
Wiping your drive clean won't help because the NVRAM entries reside in your motherboard not in your drive. You will still need UEFI Shell to clean the NVRAM. Or perhaps a BIOS reset but even that might still leave the NVRAM untouched.
Last edited by d_fajardo (2024-11-16 09:44:45)
Offline
Thanks.
UEFI shell gives a similar result to efibootmgr - appears to remove the entry, but when I exit the shell and return to UEFI-bios it's still there.
One difference - first time back in arch after removal, efibootmgr doesn't show the entry. But second time it does.
I'm wondering if - the UEFI bios is (re)populating the boot options by looking at the EFI partition, so that to remove the entry you actually do need to remove the entry from the EFI partition?
Last edited by mytArch (2024-11-16 10:15:31)
Offline
I'm wondering if - the UEFI bios is (re)populating the boot options by looking at the EFI partition
Could be.
Try removing the Fedora directory on the EFI system partition (EFI/FEDORA), see if that stops the entry being replaced.
Jin, Jîyan, Azadî
Offline
Thanks.
Some progress maybe.
Removed Fedora directory so that no longer shows up in efibootmgr or uefi-bios.
But
1. There's a new persistent entry in efibootmgr and uefi-bios, corresponding to an entry in the EFI system partition that didn't previously show up - is this arch related?:
Boot0003* UEFI OS HD(1,GPT,b5e329,0x800,0x12c000)/\EFI\BOOT\BOOTX64.EFI0000424f
2. Immediately after I deleted the Fedora directory, three new entries showed up on efibootmgr (output below) but: i. these no longer visible after a reboot; ii the device doesn't have a cd/dvd drive; iii the device obviously does have a network device but not quite sure how this entry just pops in and out of existence like this, without any action on my part.
[x@Arch EFI]$ sudo efibootmgr
BootCurrent: 0001
Timeout: 1 seconds
BootOrder: 0001,0002,0004,0005,0006
Boot0001* GRUB HD(1,GPT,b5e...cd,0x800,0x12c000)/\EFI\GRUB\GRUBX64.EFI
Boot0002* Windows Boot Manager HD(1,GPT,e28e1741...e1a,0x800,0x32000)/\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI57494e444f57530...fff0400
Boot0004* UEFI:CD/DVD Drive BBS(129,,0x0)
Boot0005* UEFI:Removable Device BBS(130,,0x0)
Boot0006* UEFI:Network Device BBS(131,,0x0)
Last edited by mytArch (2024-11-16 23:47:50)
Offline
That bootx64.efi entry is for the removable loader location, which is used automatically by systemd-boot and optionally by GRUB.
More here: https://www.rodsbooks.com/efi-bootloade … ive-naming
For your second point I would observe that many UEFI firmware implementations are very buggy.
Jin, Jîyan, Azadî
Offline