systemd-boot

SYSTEMD-BOOT(7)                   systemd-boot                   SYSTEMD-BOOT(7)



BEZEICHNUNG
       systemd-boot, sd-boot - Ein einfacher UEFI-Systemstartverwalter

BESCHREIBUNG
       systemd-boot (kurz sd-boot) ist ein einfacher UEFI-Systemstartverwalter.
       Er stellt ein graphisches Menü zur Auswahl des zu startenden Eintrags und
       einen Editor für die Kernelbefehlszeile zur Verfügung. systemd-boot
       unterstützt nur Systeme mit UEFI-Firmware.

       systemd-boot lädt Systemstarteintragsinformationen aus der
       EFI-Systempartition (ESP), die zur Betriebssystemlaufzeit normalerweise
       unter /efi/, /boot/ oder /boot/efi/ eingehängt ist, sowie von der
       »Extended Boot Loader«-Partition, falls sie existiert (normalerweise
       unter /boot/ eingehängt). Konfigurationsdateifragmente, Kernel, Initrds
       und andere zu startende EFI-Images müssen im Allgemeinen in der ESP oder
       der »Extended Boot Loader«-Partition liegen. Linux-Kernel müssen mit
       CONFIG_EFI_STUB gebaut sein, damit sie direkt als EFI-Image ausgeführt
       werden können. Während des Systemstarts fügt systemd-boot automatisch
       eine Liste von Systemstarteinträgen aus den folgenden Quellen zusammen:

       •   Systemstarteinträge, die in Beschreibungsdateien gemäß der Boot
           Loader-Spezifikation[1] in /loader/entries/ auf der ESP und der
           »Extended Boot Loader«-Partition liegen. Diese beschreiben
           normalerweise Linux-Kernel-Images mit zugehörigen Initrd-Images,
           können aber alternativ auch beliebige andere EFI-Programme
           beschreiben.

       •   Vereinigte Kernel-Images, die der Boot Loader-Spezifikation[1]
           folgen, als ausführbare EFI-Programme in /EFI/Linux/ auf der ESP und
           der »Extended Boot Loader«-Partition.

       •   Der Microsoft-Windows-EFI-Systemstartverwalter, falls installiert.

       •   Der Apple-MacOS-X-Systemstartverwalter, falls installiert.

       •   Das EFI-Shell-Programm, falls installiert.

       •   Ein Neustart in die UEFI-Firmware-Einrichtungsoption, falls durch die
           Firmware unterstützt.

       systemd-boot unterstützt die folgenden Funktionalitäten:

       •   Grundlegende Änderungen an der Konfiguration des
           Systemstartverwalters (wie Konfiguration der Zeitüberschreitung,
           Vorgabe-Systemstartauswahl, …) können direkt zum Systemstartzeitpunkt
           von der Bedienoberfläche des Systemstartprogramms aus vorgenommen
           werden, sowie während der Laufzeit des Systems mit EFI-Variablen.

       •   Der Systemstartverwalter integriert mit dem Befehl systemctl, um
           Funktionalitäten wie systemctl reboot --boot-loader-entry=… (zum
           Neustart in einen bestimmten Systemstartmenüeintrag, d.h. »Neustart
           in Windows«) und systemctl reboot --boot-loader-menu=… (zum
           Neustawrten in das Systemstartmenü) zu implementieren, indem die
           Systemladerschnittstelle[2] implementiert wird. Siehe systemctl(1)
           für Details.

       •   Eine durch den Systemstartverwalter gesetzte EFI-Variable informiert
           das Betriebssystem über die während des Systemstarts verwandte
           ESP-Partition. Dies wird dann dazu benutzt, automatisch die korrekte
           ESP-Partition unter /efi/ oder /boot/ zur Betriebssystemlaufzeit
           einzuhängen. Siehe systemd-gpt-auto-generator(8) für Details.

       •   Der Systemstartverwalter stellt unter Verwendung der
           Boot-Loader-Schnittstelle[2] Informationen über die in der
           UEFI-Firmware verbrachte Zeit bereit. Diese Information kann mittels
           systemd-analyze(1) dargestellt werden.

       •   Der Systemstartverwalter implementiert das Systemstartzählen und
           fällt bei Fehlschlägen automatisch zu älteren, funktionierenden
           Systemstarteinträgen zurück. Siehe Automatische
           Systemstartbeurteilung[3].

       •   Der Systemstartverwalter liest optional die Zufallsstartwerte aus der
           ESP-Partition, kombiniert sie mit einem in einer dauerhaften
           EFI-Variable abgelegten »Systemmerkmal« und leitet einen
           Zufallsstartwert ab, der vom Betriebssystem zur Initialisierung des
           Entropie-Fundus während der frühen Systemstartphase verwandt wird.

       bootctl(1) kann aus dem laufenden System verwandt werden, um die ESP und
       die »Extended Boot Loader«-Partition zu ermitteln, verfügbare Einträge
       aufzulisten und systemd-boot selbst zu installieren.

       kernel-install(8) kann zum Kopieren des Kernel-Images auf die ESP oder
       die »Extended Boot Loader«-Partition und zur Erstellung von
       Beschreibungsdateien, die konform mit der Boot-Loader-Spezifikation sind,
       verwandt werden.

TASTENBELEGUNGEN
       Im Boot-Menü können die folgenden Tasten verwandt werden:

       ↑ (Hoch), ↓ (Runter), j, k, SeiteHoch, SeiteRunter, Pos 1, Ende
           Die Eintragsliste hoch/runter navigieren

       ↵ (Eingabe), → (Rechts)
           Den ausgewählten Eintrag starten

       d
           Den ausgewählten Eintrag als Vorgabe setzen

       e
           Für den ausgewählten Eintrag die Kernelbefehlszeile bearbeiten

       +, t
           Die Zeitüberschreitung vor dem Starten des Vorgabeeintrags erhöhen

       -, T
           Die Zeitüberschreitung verringern

       v
           Zeigt die Versionen von Systemd-boot, UEFI und der Firmware

       P
           Gibt den Status aus

       Q
           Beendet

       h, ?, F1
           Zeigt einen Hilfebildschirm

       Strg+l
           Gibt den Bildschirm erneut aus

       Die folgenden Tasten können während des Systemstarts oder im Startmenü
       gedrückt werden, um direkt einen bestimmten Eintrag zu starten:

       l
           Linux

       w
           Windows

       a
           OS X

       s
           EFI-Shell

       1, 2, 3, 4, 5, 6, 7, 8, 9
           Boot-Eintrag Nummer 1 … 9

       Das Boot-Menü wird angezeigt, wenn eine Zeitüberschreitung größer Null
       konfiguriert wurde. Falls die Menü-Zeitüberschreitung auf Null gesetzt
       wurde, reicht es aus, eine Taste zu drücken - bevor sich das
       Systemstartprogramm initialisiert -- um das Boot-Menü hochzubringen.
       Ausnahmen sind die direkt hierüber aufgeführten Tasten, da sie direkt in
       den ausgewählten Boot-Menü-Eintrag starten. Beachten Sie, dass das
       Zeitfenster, in dem Tastendrücke akzeptiert werden, bevor sich das
       Systemstartprogramm initialisiert, abhängig von der
       Firmware-Implementierung sehr kurz sein kann. Falls das Fenster verpasst
       wird, starten Sie neu und versuchen Sie es erneut, möglicherweise, indem
       sie eine geeignete Taste (beispielsweise die Leertaste) dauerhaft
       drücken: auf den meisten Systemen sollte es möglich sein, das Zeitfenster
       nach ein paar Versuchen zu treffen. Um das Problem zu vermeiden, sollten
       Sie darüber nachdenken, die Zeitüberschreitung auf einen Wert größer Null
       zu setzen, wodurch das Boot-Menü bedingungslos angezeigt wird. Einige
       Desktop-Umgebungen könnten anbieten, direkt in das Boot-Menü zu starten,
       um das Problem insgesamt zu vermeiden. Alternativ können Sie auch die
       Befehlszeile systemctl reboot --boot-loader-menu=0 auf der Shell
       verwenden.

       Im Editor fügen die meisten Tasten einfach sich selbst ein, aber die
       folgenden Tasten können zur Ausführung zusätzlicher Aktionen verwandt
       werden:

       ← (Links), → (Rechts), Pos 1, Ende
           Links/Rechts navigieren

       Esc
           Die Bearbeitung abbrechen und den Editor beenden

       Strg+k
           Die Befehlszeile leeren

       Strg+w, Alt+Rückschritt
           Rückwärts ein Wort löschen

       Alt+d
           Vorwärts ein Wort löschen

       ↵ (Eingabe)
           Starteintrag mit der bearbeiteten Befehlszeile

       Beachten Sie, dass Systemd-boot die US-Tastaturbelegung verwenden wird,
       falls es nicht anders konfiguriert wurde, und daher die
       Tastenbezeichnungen für Tasten wie +/- nicht passen könnten.

DATEIEN
       Die Dateien, die systemd-boot verarbeitet, liegen im Allgemeinen auf der
       UEFI ESP, die normalerweise während der Laufzeit des Betriebssystems nach
       /efi/, /boot/ oder /boot/efi/ eingehängt ist. Sie verarbeitet auch
       Dateien auf der »Extended Boot Loader«-Partition, die normalerweise auf
       /boot/ eingehängt ist, falls sie existiert. systemd-boot liest
       Laufzeitkonfigurationen wie die Systemstartzeitüberschreitung und den
       Standardeintrag aus /loader/loader.conf in der ESP (in Kombination mit
       aus EFI-Variablen gelesenen Daten). Siehe loader.conf(5).
       Systemeintragbeschreibungsdateien, die der Boot-Loader-Spezifikation[1]
       folgen, werden aus /loader/entries/auf der ESP und der »Extended Boot
       Loader«-Partition gelesen. Vereinigte Kernelsystemstarteinträge, die der
       Boot-Loader-Spezifikation[1] folgen, werden aus /EFI/Linux/ auf der ESP
       und der »Extended Boot Loader«-Partition gelesen. Optional wird ein
       Zufallsstartwert für die Bereitstellung von Entropie im Fundus während
       der frühen Systemstartphase unter /loader/random-seed im ESP gespeichert.

EFI-VARIABLEN
       Die folgenden EFI-Variablen sind definiert und werden durch systemd-boot
       unter der Lieferanten-UUID »4a67b082-0a4c-41cf-b6c7-440b29bb8c4« für die
       Kommunikation zwischen dem Betriebssystem und dem Boot-Loader gesetzt und
       gelesen:

       LoaderBootCountPath
           Falls Startzählung aktiviert ist, enthält dies den Pfad zu der Datei,
           in deren Namen die Startzähler kodiert sind. Wird durch den
           Boot-Loader gesetzt. systemd-bless-boot.service(8) verwendet diese
           Informationen, um einen Systemstart als erfolgreich zu markieren, wie
           dies durch die erfolgreiche Aktivierung der Ziel-Unit
           boot-complete.target bestimmt wird.

       LoaderConfigTimeout, LoaderConfigTimeoutOneShot
           Die Menü-Zeitüberschreitung in Sekunden. Wird vom Boot-Loader
           gelesen. LoaderConfigTimeout wird dauerhaft verwaltet, während
           LoaderConfigTimeoutOneShot eine einmalige Außerkraftsetzung ist, die
           einmal gelesen wird (und in diesem Fall Vorrang vor
           LoaderConfigTimeout hat) und dann entfernt wird. LoaderConfigTimeout
           kann mit den Tasten t/T verändert werden, siehe oben.

       LoaderDevicePartUUID
           Enthält die Partitions-UUID der EFI-Systempartition, von der der
           Boot-Loader gestartet wurde. Wird vom Boot-Loader gesetzt.
           systemd-gpt-auto-generator(8) verwendet diese Information, um
           automatisch die Platte zu finden, von der gestartet wurde, um die
           verschiedenen anderen Partitionen auf der gleichen Platte automatisch
           zu erkennen.

       LoaderEntries
           Eine Liste der Kennzeichner aller erkannten Boot-Loader-Einträge.
           Wird vom Boot-Loader gesetzt.

       LoaderEntryDefault, LoaderEntryOneShot
           Der Kennzeichner des Standard-Boot-Loader-Eintrags. Wird primär vom
           Betriebssystem gesetzt und vom Boot-Loader gelesen.
           LoaderEntryOneShot setzt den Vorgabeeintrag für nur den nächsten
           Systemstart, während LoaderEntryDefault ihn dauerhaft für alle
           zukünftigen Systemstarts setzt. Die Befehle set-default und
           set-oneshot von bootctl(1) verwenden diese Variablen. Der Boot-Loader
           verändert auf Anfrage LoaderEntryDefault, wenn die Taste »d« gedrückt
           wird, siehe oben.

       LoaderEntrySelected
           Der Kennzeichner des Boot-Loader-Eintrags, der derzeit gestartet
           wird. Wird vom Boot-Loader gesetzt.

       LoaderFeatures
           Eine Gruppe von Schaltern, die anzeigen, welche Funktionalitäten der
           Boot-Loader unterstützt. Wird vom Boot-Loader gesetzt. Verwenden Sie
           bootctl(1), um diese Daten anzuschauen.

       LoaderFirmwareInfo, LoaderFirmwareType
           Kurze Firmware-Information. Wird vom Boot-Loader gesetzt. Verwenden
           Sie bootctl(1), um diese Daten anzuschauen.

       LoaderImageIdentifier
           Der Pfad zu dem Programm des Boot-Loaders, der für den aktuellen
           Systemstart verwandt wurde, relativ zum Wurzelverzeichnis der
           EFI-Systempartition. Wird vom Boot-Loader gesetzt. Verwenden Sie
           bootctl(1), um diese Daten anzuschauen.

       LoaderInfo
           Kurze Informationen über den Boot-Loader. Wird vom Boot-Loader
           gesetzt. Verwenden Sie bootctl(1), um diese Daten anzuschauen.

       LoaderTimeExecUSec, LoaderTimeInitUSec, LoaderTimeMenuUsec
           Informationen über die in verschiedenen Teilen des Boot-Loaders
           verbrachte Zeit. Wird vom Boot-Loader gesetzt. Verwenden Sie
           systemd-analyze(1), um diese Daten anzuschauen.

       LoaderRandomSeed
           systemd-boot kann optional einen binären Zufallsstartwert an das
           Betriebssystem weitergeben. Dies ist eine flüchtige EFI-Variable, die
           einen während des Systemstarts ermittelten Hash aus der Kombination
           des in der ESP gespeicherten Zufallsstartwertes (in
           /loader/random-seed) und einem »Systemmerkmal«, das dauerhaft in der
           EFI-Variablen LoaderSystemToken (siehe unten) enthält. Während der
           frühen Betriebssystemstartphase liest der Systemverwalter diese
           Variable und gibt sie an den Zufallsfundus des Kernels weiter und
           schreibt die vollständige Entropie, die es enthält, gut. Dies ist
           eine effiziente Art, um sicherzustellen, dass das System mit einem
           vollständig initialisierten Entropiefundus des Kernels startet, und
           zwar schon während der Phase der anfänglichen RAM-Platte.
           systemd-boot liest den Zufallsstartwert aus dem ESP, kombiniert ihn
           mit dem »Systemmerkmal« und leitet einen neuen Zufallsstartwert ab,
           um an gleicher Stellen den im ESP gespeicherten Startwert zu
           ersetzen, sowie den Zufallsstartwert, um ihn an das Betriebssystem in
           einem SHA256-Hash im Zählermodus weiterzugeben. Dies stellt sicher,
           dass verschiedene physische Systeme, die mit dem gleichen »goldenen«
           Betriebssystemabbild starten, d.h. die die gleiche
           Zufallsstartwertedatei im ESP enthalten, dennoch einen verschiedenen
           Zufallsstartwert an das Betriebssystem weitergeben. Es wird
           sichergestellt, dass der im ESP gespeicherte Zufallsstartwert
           überschrieben ist, bevor das Betriebssystem startet, um
           sicherzustellen, dass zwischen nachfolgenden Systemstarts
           verschiedene Zufallsstartwerte verwandt werden.

           Siehe Zufallsstartwerte[4] für weitere Informationen.

       LoaderSystemToken
           Ein binäres Zufallsdatenfeld, das zur Erzeugung des an das
           Betriebssystem zu übergebenen Zufallsstartwertes verwandt wird (siehe
           oben). Beachten Sie, dass diese Zufallsdaten im Allgemeinen nur
           einmal während der Betriebssysteminstallation erstellt und nie wieder
           aktualisiert werden.

       Viele dieser Variablen werden durch die Systemladerschnittstelle[2]
       definiert.

STARTZÄHLUNG
       systemd-boot implementiert einen einfachen Startzählungsmechanismus auf
       Grundlage der Boot-Loader-Spezifikation[1], für automatischen und
       unbeaufsichtigten Rückfall zu älteren
       Kernelversionen/Boot-Loader-Einträgen, wenn ein bestimmter Eintrag
       dauerhaft fehlschlägt. Alle Boot-Loader-Eintragsdateien und vereinigte
       Kernel-Image-Dateien, bei denen ein »+« von einer oder mehreren Zahlen
       (falls es zwei sind, müssen sie durch ein »-« getrennt werden) vor der
       Endung ».conf« oder ».efi« gefolgt ist, unterliegen der Startzählung: die
       erste der zwei Zahlen (»verbliebene Einträge«) wird bei jedem
       Systemstartversuch heruntergezählt, die zweite der zwei Zahlen
       (»unternommene Versuche«) wird um einen erhöht (falls »unternommene
       Versuche« nicht vorhanden ist, wird es als 0 angenommen). Abhängig vom
       aktuellen Wert dieser zwei Zähler wird der Boot-Eintrag einem der drei
       Zustände zugeordnet:

        1. Falls der Zähler »verbliebene Einträge« eines Eintrages größer als
           Null ist, wird der Eintrag dem Zustand »unbestimmt« zugeordnet. Das
           bedeutet, dass der Eintrag noch nicht erfolgreich gestartet wurde,
           aber auch noch nicht als nicht funktionstüchtig erkannt wurde.

        2. Falls der Zähler »verbliebene Einträge« eines Eintrages gleich Null
           ist, wird der Eintrag in einem »schlechten« Zustand angenommen. Das
           bedeutet, dass keine weiteren Versuche unternommen werden, diesen
           Eintrag zu starten (das bedeutet, außer alle anderen Boot-Einträge
           sind auch in einem »schlechten« Zustand), da alle Versuche, diesen
           Eintrag zu starten, nicht erfolgreich abgeschlossen wurden.

        3. Falls die Zähler »verbliebene Einträge« und »unternommene Versuche«
           eines Eintrags fehlen, wird er in einem »guten« Zustand angenommen.
           Das bedeutet, dass weiteres Startzählen für diesen Eintrag
           abgeschaltet ist, da er mindestens einmal erfolgreich startete. Der
           Dienst systemd-bless-boot.service(8) verschiebt den aktuell
           gestarteten Eintrag vom Zustand »unbestimmt« in den Zustand »gut«,
           wenn ein Systemstartversuch erfolgreich abgeschlossen wurde.

       Im Allgemeinen befinden sich neu hinzugefügte Einträge zum Boot-Loader
       zuerst im Zustand »unbestimmt«, d.h. mit dem Zähler »verbliebene
       Einträge« größer als Null. Der Systemstarteintrag verbleibt in diesem
       Zustand, bis er entweder mindestens einmal erfolgreich durchgeführt wurde
       (woraufhin er sich im Zustand »gut« befindet) — oder der Zähler
       »verbliebene Einträge« erreicht Null (woraufhin er sich im Zustand
       »schlecht« befindet).

       Beispiel: Die Systemstartladereintragsdatei foo.conf ist für 3
       Startversuche eingerichtet. Das Installationsprogramm wird es daher unter
       dem Namen foo+3.conf erstellen. Beim ersten Systemstart wird der
       Boot-Loader ihn in foo+2-1.conf umbenennen. Falls dieser Systemstart
       nicht erfolgreich abgeschlossen werden kann, wird ihn der Boot-Loader in
       foo+1-2.conf beim nachfolgenden Systemstart umbenennen. Falls dieser auch
       fehlschlägt, wird er schließlich in foo+0-3.conf beim nachfolgenden
       Systemstart umbenannt, anschließend wird er als »schlecht« betrachtet.
       Falls allerdings der Systemstart erfolgreich abgeschlossen wird, wird die
       Eintragsdatei durch das Betriebssystem in foo.conf umbenannt, so dass sie
       von diesem Zeitpunkt an als »gut« betrachtet wird.

       Das Systemstartmenü berüchsichtigt den Zähler »verbliebene Einträge« bei
       der Sortierung der Menüeinträge: Einträge im »schlechten« Zustand werden
       am Anfang der Liste einsortiert und Einträge im »guten« oder
       »unbestimmten« Zustand am Ende. Der Benutzer kann frei den zu startenden
       Eintrag aus dem Menü aussuchen, auch die bereits als »schlecht«
       markierten. Falls der zu startende Eintrag automatisch bestimmt wird,
       bedeutet dies, dass »gute« oder »unbestimmte« Einträge im Allgemeinen
       bevorzugt werden (da der unterste Eintrag im Menü standardmäßig gestartet
       wird) und »schlechte« Einträge nur berücksichtigt werden, falls keine
       »guten« oder »unbestimmten« Einträge verblieben sind.

       Das Kernelinstallationsrahmenwerk kernel-install(8) setzt optional den
       anfänglichen Zähler »verbliebene Einträge« auf den in /etc/kernel/tries
       festgelegten Wert, wenn ein Systemstarteintrag erstmals erstellt wird.

SIEHE AUCH
       bootctl(1), loader.conf(5), systemd-bless-boot.service(8),
       systemd-boot-system-token.service(8), kernel-install(8),
       Boot-Loader-Spezifikation[1], Boot-Loader-Schnittstelle[2]

ANMERKUNGEN
        1. Systemstartladeprogrammspezifikation
           https://systemd.io/BOOT_LOADER_SPECIFICATION

        2. Boot-Loader-Schnittstelle
           https://systemd.io/BOOT_LOADER_INTERFACE

        3. Automatische Systemstartbeurteilung
           https://systemd.io/AUTOMATIC_BOOT_ASSESSMENT

        4. Zufallsstartwerte
           https://systemd.io/RANDOM_SEEDS


ÜBERSETZUNG
       Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann
       <debian@helgefjell.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General
       Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen.
       Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
       Sie bitte eine E-Mail an <debian-l10n-german@lists.debian.org>.



systemd 246                                                      SYSTEMD-BOOT(7)