<< Zurück |
Inhaltsverzeichnis | Weiter >> |
Wichtige Informationen über EFI.
Der EFI Bootmanager durchsucht alle FAT Partitionen nach Boot Dateien. Standard Pfad/Datei ist
/efi/boot/bootx64.efi
Bei Festplatten wird die GUID Partition Table für Partitionen verwendet. Üblicherweise hat die erste Partition die Partitions ID EF00 (EFI System), ist eine FAT Partition mit ca. 300 MB, FAT32 formatiert, enthält die Boot Dateien.
Unter Linux kann man die EFI Booteinstellungen mit dem Programm 'efibootmgr' ändern.
Um Linux zu booten kann man einen Bootmanager wie Grub2 verwenden, oder den Linux Kernel direkt mit EFI booten.
Um den Linux Kernel direkt mit EFI zu booten, müssen zwei Optionen in der Kernelkonfiguration aktiviert sein. Es ist 'EFI stub support' und 'Built-in kernel command line'.
Den Kernel kompilieren:
Kopieren Sie 'bzImage' (wenn kompiliert, von arch/x86/boot/bzImage) in das '/efi/boot' Verzeichnis auf der EFI Partition.
Wenn Sie 'bzImage' zu 'bootx64.efi' umbenennen, dann findet der EFI Bootmanager den Kernel automatisch.
Verwenden Sie 'efibootmgr' um den EFI Bootmanager zu konfigurieren. Beispiel um einen neuen Booteintrag mit der Datei 'bootx64.efi' erstellen:
efibootmgr -c -d /dev/sda -p 1 -L "Plop Linux" -l "\efi\boot\bootx64.efi"Hier muß der Backslash verwendet werden!
Mit diesem Programm kann man die Booteinträge vom EFI System bearbeiten. Mit 'efibootmgr -h' werden alle Programmoptionen aufgelistet.
Booteinträge auflisten
efibootmgr oder efibootmgr -v
Ausgabe mit -v:
BootCurrent: 0001 Timeout: 3 seconds BootOrder: 0000,0002 Boot0000* Plop Linux HD(1,GPT,7fda9dd2-426e-42eb-a37d-fdb42d5d8eb8,0x800,0x100000)/File(\EFI\BOOT\BOOTx64.EFI) Boot0001* Some OS HD(1,GPT,7fda9dd2-426e-42eb-a37d-fdb42d5d8eb8,0x800,0x100000)/File(\EFI\BOOT\OTHER.EFI) Boot0002* Grub HD(1,GPT,7fda9dd2-426e-42eb-a37d-fdb42d5d8eb8,0x800,0x100000)/File(\EFI\BOOT\GRUB.EFI)
Menüeintrag hinzufügen und als Standardbootoption einstellen
Beispiel 1: efibootmgr -c -d /dev/sda -p 1 -L "Plop Linux" -l "\efi\boot\bootx64.efi"
Beispiel 2: efibootmgr -c -d /dev/sda -p 1 -L "Grub" -l "\efi\boot\grub.efi"
-c: Neuen Eintrag erstellen -d: Gerät mit der Boot Datei -p: Partitionsnummer -L: Label -l: Datei mit dem kompletten Pfad. Hier muß man den Backslash verwenden!
Der neue Menüeintrag wird automatisch zur Standardbootoption.
BootOrder - Bootsequenz einstellen
Einträge auflisten 'efibootmgr'.
BootCurrent: 0000 Timeout: 3 seconds BootOrder: 0000,0002 Boot0000* Plop Linux Boot0001* Some OS Boot0002* Grub
Ändern zu Grub als erster Eintrag und Plop Linux als zweiter Eintrag: efibootmgr -o 2,0
BootCurrent: 0000 Timeout: 3 seconds BootOrder: 0002,0000 Boot0000* Plop Linux Boot0001* Some OS Boot0002* Grub
Die Nummern 0, 2 sind von Boot0000, Boot0002.
Eintrag löschen
Beispiel: Den Eintrag 'Boot0001* Some OS' löschen
Einträge auflisten 'efibootmgr'.
BootCurrent: 0000 Timeout: 3 seconds BootOrder: 0000,0002 Boot0000* Plop Linux Boot0001* Some OS Boot0002* Grub
Löschen: efibootmgr -Bb 1
BootCurrent: 0000 Timeout: 3 seconds BootOrder: 0000,0002 Boot0000* Plop Linux Boot0002* Grub
Die Nummer 1 kommt von Boot0001.
Vorbereitetes Paket für die EFI Partition: Download efi.tar.gz
Konfigurationsdatei: /efi/grub/grub.cfg
Grub2 bootx64.efi generieren: grub-mkstandalone -O x86_64-efi -o /boot/efi/boot/bootx64.efi
Die EFI Partition ist zu '/boot' gemountet.
<< Zurück |
Inhaltsverzeichnis | Weiter >> |
© 2025 by Elmar Hanlhofer