How to delete OS from boot menu
After installing fedora and Centos and other OS now I have them all showing in my Boot menu [F2] on start up not the menu form the OS even after deleting them and reinstaling other OS - Ubuntu -so It just shows one when the OS starts but when I go to UEFI setting I still find all the old ones they instruct you to use DEL to take them out but that does not work
Solution 1:
The menu to which you refer is the firmware's built-in boot manager. Its entries are stored in NVRAM, and can be edited by any number of tools in various environments:
- Some EFIs provide a means to do this via their setup utility. Details vary from one system to another, though, and many don't permit you to add or delete boot manager entries.
- The EFI version 2 shell provides a command called
bcfg
that can do the job. You'd need to dobcfg boot dump -b
to see the entries, thenbcfg boot rm #
to delete entry number#
--#
must be the number associated with whatever entry you want to remove. For example, if the entry isBoot0002 Fedora
, then # is 2. - In Linux,
efibootmgr
can do the job: Typeefibootmgr
orefibootmgr -v
to see the entries, then doefibootmgr -b # -B
to delete entry#
. (You must type these commands asroot
or usingsudo
.) - In Windows, the EasyUEFI tool should be able to handle the job, although I've only toyed with it briefly, so I can't give detailed instructions.
Be aware that in any of these cases, you may have leftover files on your EFI System Partition (ESP). You can delete them through normal file-manipulation commands, although depending on your OS, you may need to explicitly mount the ESP. If they aren't referenced, the files won't do any real harm, unless they consume so much space that they prevent you from installing another OS or updating your boot manager. The files will normally be stored in subdirectories of the EFI
directory on the ESP; most OSes create subdirectories named after themselves or the companies that create them, such as EFI/ubuntu
for Ubuntu or EFI/Microsoft
for Windows.