From Mageia wiki
Jump to: navigation, search
Drakconf multiflag.png
Other languages

Deutsch ; English ;



This page is a draft. It requires improvements.

If you want to improve it, simply log in and click on the edit tab.
Please remove this {{Draft}} template, when you're sure the page is complete and correct.

View the other draft pages

View all other pages to improve and maintain.



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).


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


Notepad.png
Please 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