Other languages English ; |
Please remove this {{Draft}}template, when you're sure the page is complete and correct.
|
The efibootmgr application interacts with the UEFI firmware on the system, and is a popular tool to manipulate the EFI settings in order to create and manage boot entries that are capable of booting Linux (or other operating systems).
Contents
EFIbootmgr is not a boot loader
The efibootmgr
application is not a boot loader. It is a tool that interacts with the EFI firmware of the system, which itself is acting as a boot loader. With the efibootmgr
application, boot entries can be created, reshuffled and updated.
Configuration
The efibootmgr
application does not require any configuration. All that is needed is to install it. It is installed by default when EFI-installing Mageia.
$ rpm -qa | grep efibootmgr efibootmgr-0.11.0-3.mga5 efibootmgr-debuginfo-0.11.0-3.mga5
It needs the EFI variables file system, which will also be available after an EFI-install:
# mount | grep efivars efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
If something went wrong, and it isn't mounted, it can be done manually with
# mount -t efivarfs efivars /sys/firmware/efi/efivars
Managing EFI boot entries
Listing boot entries
To list the current boot entries, just use # efibootmgr
. Use the --verbose
(-v
) option to get some additional information:
# efibootmgr -v BootCurrent: 0012 Timeout: 0 seconds BootOrder: 000B,0012,0008,0011 Boot0000 Setup FvFile(721c8b66-426c-4e86-8e99-3457c46ab0b9) Boot0001 Boot Menu FvFile(126a762d-5758-4fca-8531-201a7f57f850) Boot0002 Diagnostic Splash Screen FvFile(a7d8d9a6-6ab0-4aeb-ad9d-163e59a7a380) Boot0003 Lenovo Diagnostics FvFile(3f7e615b-0d45-4f80-88dc-26b234958560) Boot0004 Startup Interrupt Menu FvFile(f46ee6f4-4785-43a3-923d-7f786c3c8479) Boot0005 Rescue and Recovery FvFile(665d3f60-ad3e-4cad-8e26-db46eee9f1b5) Boot0006* USB CD VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,86701296aa5a7848b66cd49dd3ba6a55) Boot0007* USB FDD VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,6ff015a28830b543a8b8641009461e49) Boot0008* ATAPI CD0 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,aea2090adfde214e8b3a5e471856a35401) Boot0009* ATA HDD0 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f600) Boot000A* ATA HDD1 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f602) Boot000B* USB HDD VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,33e821aaaf33bc4789bd419f88c50803) Boot000C* PCI LAN VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,78a84aaf2b2afc4ea79cf5cc8f3d3803) Boot000D* ATAPI CD1 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,aea2090adfde214e8b3a5e471856a35404) Boot000E* ATA HDD2 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f604) Boot000F Other CD VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,aea2090adfde214e8b3a5e471856a35406) Boot0010 Other HDD VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f606) Boot0011* Windows Boot Manager HD(2,1f4800,82000,74a19d5c-6445-4e6a-8fb0-fe7e46e5b33c)File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...yk............... Boot0012* mageia HD(2,1f4800,82000,74a19d5c-6445-4e6a-8fb0-fe7e46e5b33c)File(\EFI\mageia\grubx64.efi) |
Creating a boot entry
To create an EFI boot entry, a couple of arguments are passed to efibootmgr
:
--create (-c)
to create a new entry--part (-p)
followed by the partition number on which the EFI System Partition is hosted--disk (-d)
followed by the disk on which the EFI System Partition is hosted--label (-L)
followed by the label to use as the boot entry--loader (-l)
followed by the path of the EFI image to boot
Note: The path of the EFI image to boot must use the backslash "\" instead of the slash "/" as path separator. |
For instance:
efibootmgr -c -d /dev/sda -p 2 -L "mageia" -l "\EFI\mageia\grubx64.efi"
Deleting a boot entry
For example, to delete the boot entry 0006, the command is efibootmgr -b 0006 -B
Changing the BootOrder
First run efibootmgr
to see which identifiers all efibootmgr entries have.
If, in the example shown above in Efibootmgr#Listing boot entries, you want the system to first try booting the Mageia grubx64.efi bootloader, instead of first trying to boot from USB, and keep the rest the same, you have to first delete the current BootOrder with
efibootmgr -O
and then add the new BootOrder with
efibootmgr -o 0012,000B,0008,0011
Choose what to boot only next time
If you do not want to permanently change the BootOrder, but only want, for instance, to boot one time from a DVD, you can do that with the -n
option, like for the above mentioned example ("Boot0008* ATAPI CD0" is the DVD player, there):
efibootmgr -n 0008
The system will boot from DVD on next boot only.
Known issues
See: EFI: can no longer boot into Mageia, about Bug 14140: boot order settings lost when updating efibootmgr
More information (links)
https://wiki.archlinux.org/index.php/Unified_Extensible_Firmware_Interface#efibootmgr
https://www.happyassassin.net/2014/01/25/uefi-boot-how-does-that-actually-work-then/
This page was originally imported from http://wiki.gentoo.org/wiki/Efibootmgr, with CC BY-SA 3.0 license