Efibootmgr

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page Efibootmgr and the translation is 26% complete.

Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎español • ‎italiano • ‎русский • ‎中文(中国大陆)‎ • ‎日本語 • ‎한국어

Die Anwendung efibootmgr interagiert auf dem System mit der UEFI Firmware und ist ein bekanntes Werkzeug zur Manipulation der EFI Einstellungen zur Erzeugung und Handhabung von Boot-Einträgen die zum Booten von Linux (oder anderen Betriebssystemen) fähig sind.

It is not a bootloader. It is a tool that interacts with the EFI firmware of the system, which itself is acting as a bootloader. Using efibootmgr boot entries can be created, reshuffled and removed.

Kernel

CONFIG_EFI_VARS support needs to be enabled:

KERNEL Enable EFI variable support
Firmware Drivers  --->
   EFI (Extensible Firmware Interface) Support  --->
       <*> EFI Variable Support via sysfs

Emerge

Die Applikation sys-boot/efibootmgr benötigt keinerlei Konfiguration. Alles das benötigt wird ist sie zu installieren.

root #emerge --ask sys-boot/efibootmgr

Configuration

EFI vars

Um jedoch die Applikation efibootmgr erfolgreich zu nutzen, muss auf das EFI Variablen Dateisystem zugegriffen werden können. Dies erfordert dass das System bereits mit EFI (und nicht durch das BIOS) gebootet ist, andernfalls sind die EFI Variablen selbst nicht zugänglich.

When the system is in EFI mode, run the following command to check for the existence of efivarfs:

root #mount | grep efivars
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)

Wenn es noch nicht gemountet ist (es sollte durch das sysfs Init-Skript gemountet werden), können Sie es auf diese Weise manuell mounten:

root #mount -t efivars efivars /sys/firmware/efi/efivars

Preconditions

If an EFI System Partition (ESP) does not exist, one needs to be created, see EFI System Partition

EFI Boot-Einträge handhaben

Boot-Einträge auflisten

Um die aktuellen Boot-Einträge aufzulisten verwenden Sie einfach efibootmgr. Verwenden Sie die Option --verbose (-v) um ein paar zusätzliche Informationen zu erhalten:

root #efibootmgr -v
BootCurrent: 0002
Timeout: 3 seconds
BootOrder: 0003,0003,0002,0000,0004
Boot0000* CD/DVD Drive  BIOS(3,0,00)
Boot0001* Hard Drive    BIOS(2,0,00)
Boot0002* Gentoo        HD(1,800,61800,6d98f360-cb3e-4727-8fed-5ce0c040365d)File(\EFI\boot\bootx64.efi)
Boot0003* Hard Drive    BIOS(2,0,00)P0: ST1500DM003-9YN16G

Boot-Einträge erstellen

Um einen EFI Boot-Eintrag zu erstellen werden ein paar Argumente an efibootmgr übergeben:

  • --create (-c) um einen neuen Eintrag zu erstellen;
  • --part (-p) gefolgt von der Partitions-Nummer auf der die EFI Systempartition untergebracht ist;
  • --disk (-d) gefolgt von der Festplatte auf der die EFI Systempartition untergebracht ist;
  • --label (-L) gefolgt von dem Namen der als Boot-Eintrag verwendet werden soll;
  • --loader (-l) gefolgt von dem Pfad des zu bootenden EFI Image
Wichtig
Der Pfad des zu bootenden EFI Images muss \ (Backslash) anstelle von / (Schrägstrich) als Pfadtrenner verwenden.

Beispiel:

root #efibootmgr -c -d /dev/sda -p 2 -L "Gentoo" -l "\efi\boot\bootx64.efi"

Optionally, additional kernels can be installed and made known to the UEFI firmware. This is especially useful when wanting to test more kernels or to dual-boot with another operating system. These will be shown in the boot selection prompt, normally after a keyboard hotkey is pressed at the right time during system initialization. The latest added entry always gets highest boot priority, so it will be default. If the hotkey combination is unknown, search for official documentation from the computer manufacturer. This information is usually not difficult to find.

Boot-Eintrag löschen

Bevor Sie einen Eintrag löschen, finden Sie zuerst heraus welche ID er hat.

Um den oben gezeigten Gentoo-Eintrag zu löschen (der Boot0002 als Kennung besitzt), bitten Sie efibootmgr darum den Eintrag mit der ID 2 zu löschen. Übergeben Sie die Argumente --bootnum (-b) mit der Kennung und --delete-bootnum (-B) um den Eintrag zu löschen:

root #efibootmgr -b 2 -B

Removal

Unmerge

root #emerge --ask --depclean sys-boot/efibootmgr

Siehe auch

  • EFI stub kernel beschreibt wie der Linux Kernel zu konfigurieren ist, damit er vom EFI direkt gebootet werden kann.