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 textuelles Menu zur Auswahl des zu startenden Eintrags und einen Editor fur die Kernelbefehlszeile zur Verfugung. systemd-boot unterstutzt nur Systeme mit UEFI-Firmware. systemd-boot ladt Systemstarteintragsinformationen aus der EFI-Systempartition (ESP), die zur Betriebssystemlaufzeit normalerweise unter /efi/, /boot/ oder /boot/efi/ eingehangt ist, sowie von der >>Extended Boot Loader<<-Partition (XBOOTLDR), falls sie existiert (normalerweise unter /boot/ eingehangt). Konfigurationsdateifragmente, Kernel, Initrds und andere zu startende EFI-Images mussen im Allgemeinen in der ESP oder der >>Extended Boot Loader<<-Partition liegen. Linux-Kernel mussen mit CONFIG_EFI_STUB gebaut sein, damit sie direkt als EFI-Image ausgefuhrt werden konnen. Wahrend des Systemstarts fugt systemd-boot automatisch eine Liste von Systemstarteintragen aus den folgenden Quellen zusammen: o Systemstarteintrage, die in Typ-#1-Beschreibungsdateien gemass der UAPI.1-Systemstartlader-Spezifikation[1] in /loader/entries/ auf der ESP und der >>Extended Boot Loader<<-Partition liegen. Diese beschreiben normalerweise Linux-Kernel-Images mit zugehorigen Initrd-Images, konnen aber alternativ auch beliebige andere EFI-Programme beschreiben. o Vereinigte Kernel-Images, UAPI.1-Systemstartlader-Spezifikation[1] Typ 2, die ausfuhrbare EFI-Programme in /EFI/Linux/ auf der ESP und der >>Extended Boot Loader<<-Partition sind. o Der Microsoft-Windows-EFI-Systemstartverwalter, falls installiert. o Der Apple-macOS-Systemstartverwalter, falls installiert. o Das EFI-Shell-Programm, falls installiert. o Ein Option >>Reboot Into Firmware Interface<< (Neustart in die UEFI-Firmware-Schnittstelle), falls durch die Firmware unterstutzt. o Registrierung der Variablen des sicheren Systemstarts, falls die UEFI-Firmware sich im Einrichtungsmodus befindet und Dateien auf dem ESP bereitgestellt werden. systemd-boot unterstutzt die folgenden Funktionalitaten: o Grundlegende Anderungen an der Konfiguration des Systemstartverwalters (wie Konfiguration der Zeituberschreitung, Vorgabe-Systemstartauswahl, ) konnen direkt zum Systemstartzeitpunkt von der Bedienoberflache des Systemstartprogramms aus vorgenommen werden, sowie wahrend der Laufzeit des Systems mit EFI-Variablen. o Der Systemstartverwalter integriert mit dem Befehl systemctl, um Funktionalitaten wie systemctl reboot --boot-loader-entry= (zum Neustart in einen bestimmten Systemstartmenueintrag, d.h. >>Neustart in Windows<<) und systemctl reboot --boot-loader-menu= (zum Neustawrten in das Systemstartmenu) zu implementieren, indem die Systemstartladerschnittstelle[2] implementiert wird. Siehe systemctl(1) fur Details. o Eine durch den Systemstartverwalter gesetzte EFI-Variable informiert das Betriebssystem uber die wahrend des Systemstarts verwandte EFI-System-Partition. Dies wird dann dazu benutzt, automatisch die korrekte EFI-System-Partition unter /efi/ oder /boot/ zur Betriebssystemlaufzeit einzuhangen. Siehe systemd-gpt-auto-generator(8) fur Details. o Der Systemstartverwalter stellt unter Verwendung der Systemstartlader-Schnittstelle[2] Informationen uber die in der UEFI-Firmware verbrachte Zeit bereit. Diese Information kann mittels systemd-analyze(1) dargestellt werden. o Der Systemstartverwalter implementiert das Systemstartzahlen und fallt bei Fehlschlagen automatisch zu alteren, funktionierenden Systemstarteintragen zuruck. Siehe Automatische Systemstartbeurteilung[3]. o 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-Vorrats wahrend der fruhen Systemstartphase verwandt wird. o Der Systemstartverwalter erlaubt die Registrierung von Variablen fur den sicheren Systemstart, falls sich die UEFI-Firmware im Einrichtungsmodus befindet. Zusatzlich konnen Variablen automatisch registriert werden, falls konfiguriert. bootctl(1) kann aus dem laufenden System verwandt werden, um die ESP und die >>Extended Boot Loader<<-Partition zu ermitteln, verfugbare Eintrage 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 Systemstartlader-Spezifikation sind, verwandt werden. systemd-stub(7) kann als UEFI-Systemstartrumpf fur ausgefuhrte Kernel verwandt werden. Das ist nutzlich, um graphische Systemstartbilder zu zeigen, bevor in die Linux-Welt ubergeleitet wird. Es ist auch in der Lage, zusatzliche Zugangsberechtigungsdateien aufzusammeln (fur die Parametrisierung des Systemstarts) und Erweiterungsabbilder fur das System, wie Begleitdateien fur die gestarteten Kernelabbilder. TASTENBELEGUNGEN Im Systemlader-Menu konnen die folgenden Tasten verwandt werden: ^ (Hoch), v (Runter), j, k, SeiteHoch, SeiteRunter, Pos 1, Ende Die Eintragsliste hoch/runter navigieren Hinzugefugt in Version 239. (Eingabe), -> (Rechts) Den ausgewahlten Eintrag starten Hinzugefugt in Version 239. d Den ausgewahlten Eintrag als bevorzugten Systemstarteintrag setzen Eine EFI-Variable wird gesetzt, damit diese Einstellung dauerhaft ist. Hinzugefugt in Version 260. D Den ausgewahlten Eintrag als Standard-Systemstarteintrag setzen Eine EFI-Variable wird gesetzt, damit diese Einstellung dauerhaft ist. Hinzugefugt in Version 260. e Fur den ausgewahlten Eintrag die Kernelbefehlszeile bearbeiten Hinzugefugt in Version 239. +, t Die Zeituberschreitung vor dem Starten des Vorgabeeintrags erhohen Eine EFI-Variable wird gesetzt, damit diese Einstellung dauerhaft ist. Hinzugefugt in Version 239. -, T Die Zeituberschreitung verringern Eine EFI-Variable wird gesetzt, damit diese Einstellung dauerhaft ist. Hinzugefugt in Version 239. r Andert die Bildschirmauflosung, uberspringt nicht unterstutzte Modi. Eine EFI-Variable wird gesetzt, damit diese Einstellung dauerhaft ist. Hinzugefugt in Version 250. R Setzt die Bildschirmauflosung auf die Vorgabe der Firmware oder der Konfigurationsdatei zuruck. Eine EFI-Variable wird gesetzt, damit diese Einstellung dauerhaft ist. Hinzugefugt in Version 250. p Gibt den Status aus Hinzugefugt in Version 250. h, ?, F1 Zeigt einen Hilfebildschirm Hinzugefugt in Version 239. f Startet neu in die Firmware-Schnittstelle. Zur Kompatibilitat mit Tastaturbindungen mehrerer Firmware-Implementierungen kann diese Aktion auch mit F2, F10, Entf und Esc erreicht werden. Hinzugefugt in Version 250. Umschalt+o Das System herunterfahren. Hinzugefugt in Version 255. Umschalt+b Neustart des Systems. Hinzugefugt in Version 255. Die folgenden Tasten konnen wahrend des Systemstarts oder im Startmenu gedruckt werden, um direkt einen bestimmten Eintrag zu starten: l Linux Hinzugefugt in Version 239. w Windows Hinzugefugt in Version 239. a macOS Hinzugefugt in Version 239. s EFI-Shell Hinzugefugt in Version 239. 1, 2, 3, 4, 5, 6, 7, 8, 9 Systemladereintrag Nummer 1 9 Hinzugefugt in Version 239. Das Systemstart-Menu wird angezeigt, wenn eine Zeituberschreitung grosser Null konfiguriert wurde. Falls die Menu-Zeituberschreitung auf Null gesetzt wurde, drucken Sie eine Taste (die Leertaste wird empfohlen), bevor sich das Systemstartprogramm initialisiert, um das Systemstart-Menu hochzubringen. Beachten Sie, dass das Zeitfenster, in dem Tastendrucke akzeptiert werden, bevor sich das Systemstartprogramm initialisiert, abhangig von der Firmware-Implementierung sehr kurz sein kann. Falls das Fenster verpasst wird, starten Sie neu und versuchen Sie es erneut, moglicherweise durch wiederholtes Drucken einer geeigneten Taste: auf den meisten Systemen sollte es moglich sein, das Zeitfenster nach ein paar Versuchen zu treffen. Es konnen andere Tasten als die Leertaste verwandt werden, ausser den oben aufgefuhrten Tasten. Falls die Anzeige des Menus auf Anforderung nicht sehr gut funktioniert, sollten Sie daruber nachdenken, die Zeituberschreitung auf einen Wert grosser Null zu setzen, wodurch das Systemstart-Menu bedingungslos angezeigt wird. Einige Desktop-Umgebungen konnten anbieten, direkt in das Systemstart-Menu zu starten, um das Problem insgesamt zu vermeiden. Alternativ konnen Sie auch die Befehlszeile systemctl reboot --boot-loader-menu= mit einem von Null verschiedenen Wert auf der Shell verwenden. Im Editor fugen die meisten Tasten einfach sich selbst ein, aber die folgenden Tasten konnen zur Ausfuhrung zusatzlicher Aktionen verwandt werden: <- (Links), -> (Rechts), Pos 1, Ende Links/Rechts navigieren Hinzugefugt in Version 239. Esc, Strg+c Die Bearbeitung abbrechen und den Editor beenden Hinzugefugt in Version 239. Strg+k Die Befehlszeile vorwarts leeren Hinzugefugt in Version 239. Strg+w, Alt+Ruckschritt Ruckwarts ein Wort loschen Hinzugefugt in Version 239. Strg+Entf, Alt+d Vorwarts ein Wort loschen Hinzugefugt in Version 239. (Eingabe) Systemladereintrag mit der bearbeiteten Befehlszeile Hinzugefugt in Version 239. Beachten Sie, dass Systemd-boot die US-Tastaturbelegung verwenden wird, falls es nicht anders konfiguriert wurde, und daher die Tastenbezeichnungen fur Tasten wie +/- nicht passen konnten. DATEIEN Die Dateien, die systemd-boot verarbeitet, befinden sich im Allgemeinen auf der UEFI ESP, die normalweise wahrend der Laufzeit des Betriebssystems auf /efi/, /boot/ oder /boot/efi/ eingehangt ist. Es verarbeitet auch Dateien auf der Erweiterten Systemlade-Partition, die normalerweise auf /boot/ eingehangt ist, falls sie existiert. systemd-boot liest Laufzeitkonfiguration wie die Systemstart-Zeituberschreitung und den Vorgabeeintrag aus /loader/loader.conf aus dem ESP (zusammen mit aus EFI-Variablen gelesenen Daten). Siehe loader.conf(5). Systemstarteintragbeschreibungsdateien, die der UAPI.1-Systemstartlader-Spezifikation[1] folgen, werden aus /loader/entries/ auf dem ESP und der Erweiterten Systemladepartition gelesen. Vereinigte Kernel-Eintrage, die der UAPI.1-Systemstartlader-Spezifikation[1] folgen, werden aus /EFI/ Linux/ auf der ESP und der >>Extended Boot Loader<<-Partition gelesen. Optional wird ein Zufallsstartwert fur die Bereitstellung der Entropie-Sammlung fur die fruhe Systemstartphase in /loader/random-seed in dem ESP gespeichert. Wahrend der Initialisierung ladt systemd-boot automatisch alle im Verzeichnis /EFI/systemd/drivers/ auf dem ESP abgelegten Treiberdateien. Die dort abgelegten Dateien mussen eine Erweiterung der EFI-Architekturkennung gefolgt von .efi haben (fur x86-64 bedeutet dies beispielsweise eine Endung x64.efi). Dies kann beispielsweise zum Hinzufugen von Unterstutzung fur Hardware verwandt werden, die von der Firmware nativ nicht unterstutzt wird. Die Registrierung von Variablen fur den sicheren Systemstart kann manuell oder automatisch erfolgen, falls Dateien unter /loader/keys/NAME/{db,dbx,KEK,PK}.auth verfugbar sind. NAME ist der Anzeigename fur die Variablengruppe im Menu. Falls eine der Gruppen >>auto<< heisst, dann konnte sie automatisch registriert werden, abhangig von der Ausfuhrungsumgebung und dem Wert der Option >>secure-boot-enroll<<. Weitere Informationen finden Sie in loader.conf(5). EFI-VARIABLEN Die folgenden EFI-Variablen sind definiert und konnen durch systemd-boot fur die Kommunikation zwischen dem Systemstartlader und dem Betriebssystem gesetzt und gelesen werden. Die Lieferanten-UUID >>4a67b082-0a4c-41cf-b6c7-440b29bb8c4f<< wird in allen Fallen verwandt. LoaderBootCountPath Falls Startzahlung aktiviert ist, enthalt dies den Pfad zu der Datei, in deren Namen die Startzahler kodiert sind. Wird durch den Systemstartlader 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. Hinzugefugt in Version 240. LoaderConfigTimeout, LoaderConfigTimeoutOneShot Die Menu-Zeituberschreitung in Sekunden. Wird vom Systemstartlader gelesen. LoaderConfigTimeout wird dauerhaft verwaltet, wahrend LoaderConfigTimeoutOneShot eine einmalige Ausserkraftsetzung ist, die einmal gelesen wird (und in diesem Fall Vorrang vor LoaderConfigTimeout hat) und dann entfernt wird. LoaderConfigTimeout kann mit den Tasten t/T verandert werden, siehe oben. Hinzugefugt in Version 240. LoaderConfigConsoleMode Der numerische Menukonsolenmodus. Wird vom Systemstartlader gelesen. LoaderConfigConsoleMode wird dauerhaft verwaltet. LoaderConfigConsoleMode kann mit den Tasten r/R verandert werden, siehe oben. Hinzugefugt in Version 250. LoaderDevicePartUUID Enthalt die Partitions-UUID der Partition, aus der das Systemstartprogramm fur den aktuellen Systemstart heraus gestartet wurde (normalerweise eine EFI-Systempartition). Wird vom Systemstartlader gesetzt. (Beachten Sie, dass systemd-stub(7) dies auch setzen wird, falls es noch nicht gesetzt ist, um Systeme zu unterstutzen, die unter Umgehung jedes Systemstartprogramms direkt in ein vereinigtes Kernelabbild starten.) 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. Hinzugefugt in Version 220. LoaderDeviceURL Falls das Systemstartprogramm uber Netzwerksystemstart aufgerufen wurde, enthalt diese Variable die Ursprungs-URL. Dies kann zum automatischen Erlangen von zusatzlichen Ressourcen aus der gleichen Quelle verwandt werden. Hinzugefugt in Version 258. LoaderEntries Eine Liste der Kennzeichner aller erkannten Systemstartlader-Eintrage. Wird vom Systemstartlader gesetzt. Hinzugefugt in Version 240. LoaderEntryPreferred, LoaderEntryDefault, LoaderEntrySysFail, LoaderEntryOneShot Der Kennzeichner des Standard-Systemstartlader-Eintrags. Kann vom Betriebssystem und dem Systemstartlader gesetzt werden. LoaderEntryOneShot setzt den Vorgabeeintrag fur nur den nachsten Systemstart, wahrend LoaderEntryDefault ihn dauerhaft fur alle zukunftigen Systemstarts setzt. LoaderEntryPreferred verhalt sich wie LoaderEntryDefault, berucksichtigt aber zusatzlich die Systemstartbewertung und uberspringt Systemstarteintrage, bei denen der Zahler der verbliebenen Eintrage auf Null steht. Die Befehle set-default und set-oneshot von bootctl(1) verwenden diese Variablen. Der Systemstartlader verandert auf Anfrage LoaderEntryDefault, wenn die Taste >>d<< gedruckt wird, siehe oben. Hinzugefugt in Version 240. LoaderEntryLastBooted Der Kennzeichner des zuletzt versuchten Systemstartladereintrags. Wird vom Systemstartladeprogramm nur gesetzt, wenn der Vorgabeeintrag in /loader/loader.conf auf >>@saved<< gesetzt ist. Siehe loader.conf(5). Das Systemstartladeprogramm stellt sicher, dass LoaderEntryLastBooted fur jeden Systemstart aktuell ist. Es aktualisiert ihn bei Bedarf und unterlasst die Anderung komplett, wenn LoaderEntryOneShot gesetzt ist. Das Systemstartladeprogramm liest die Variable, die eine hohere Prioritat als LoaderEntryDefault hat. Die Variable wird ignoriert, wenn LoaderEntryOneShot gesetzt ist. LoaderEntryLastBooted kann nicht als Indiz verwandt werden, ob der letzte Systemstart erfolgreich war. Hinzugefugt in Version 250. LoaderEntrySelected Der Kennzeichner des Systemstartlader-Eintrags, der derzeit gestartet wird. Wird vom Systemstartlader gesetzt. Hinzugefugt in Version 240. LoaderFeatures Eine Gruppe von Schaltern, die anzeigen, welche Funktionalitaten der Systemstartlader unterstutzt. Wird vom Systemstartlader gesetzt. Verwenden Sie bootctl(1), um diese Daten anzuschauen. Hinzugefugt in Version 240. LoaderFirmwareInfo, LoaderFirmwareType Kurze Firmware-Information. Wird vom Systemstartlader gesetzt. Verwenden Sie bootctl(1), um diese Daten anzuschauen. Hinzugefugt in Version 240. LoaderTpm2ActivePcrBanks Hexadezimale Zeichenkettendarstellung einer Bitmaske mit Werten, die durch die TCG-EFI-Protokollspezifikation fur TPM 2.0 als EFI_TCG2_BOOT_HASH_ALG_* definiert sind. Falls keine TPM2-Unterstutzung oder keine aktiven Banke erkannt wurden, wird dies auf 0 gesetzt. Wird durch das Systemstartprogramm gesetzt. Verwenden Sie systemd-analyze(1) zum Betrachten dieser Daten. Hinzugefugt in Version 258. LoaderImageIdentifier Der Dateisystempfad zu dem EFI-Programm des Systemstartprogramms fur den aktuellen Systemstart, relativ zum Wurzelverzeichnis der Partition (d.h. relativ zu der durch LoaderDevicePartUUID angezeigten Partition, siehe oben). Wird durch das Systemstartprogramm gesetzt. (Beachten Sie, das systemd-stub(7) sie auch setzen wird, wenn sie noch nicht gesetzt wurde, um Systeme zu unterstutzen, die unter Umgehung jeglichen Systemstartprogramms direkt in das vereinigte Kernelabbild starten.). Verwenden Sie bootctl(1), um diese Daten anzuschauen. Hinzugefugt in Version 220. LoaderInfo Kurze Informationen uber den Systemstartlader. Wird vom Systemstartlader gesetzt. Verwenden Sie bootctl(1), um diese Daten anzuschauen. Hinzugefugt in Version 240. LoaderTimeExecUSec, LoaderTimeInitUSec, LoaderTimeMenuUsec Informationen uber die in verschiedenen Teilen des Systemstartladers verbrachte Zeit. Wird vom Systemstartlader gesetzt. Verwenden Sie systemd-analyze(1), um diese Daten anzuschauen. Hinzugefugt in Version 240. LoaderSystemToken Ein binares Zufallsdatenfeld, das zur Erzeugung des an das Betriebssystem zu ubergebenen Zufallsstartwertes verwandt wird (siehe oben). Beachten Sie, dass diese Zufallsdaten im Allgemeinen nur einmal wahrend der Betriebssysteminstallation erstellt und nie wieder aktualisiert werden. Hinzugefugt in Version 243. Viele dieser Variablen werden durch die Systemstartladerschnittstelle[2] definiert. SMBIOS-TYP-11-ZEICHENKETTEN systemd-boot kann konfiguriert werden, SMBIOS-Typ-11-Zeichenketten zu verwenden. Anwendbare Zeichenketten bestehen aus einem Namen, gefolgt von >>=<<, gefolgt vom Wert. Ausser wenn systemd-boot erkennt, dass es innerhalb einer vertraulichen Rechnerumgebung lauft, wird systemd-boot die Tabelle nach einer Zeichenkette mit dem bestimmten Namen durchsuchen und, falls er gefunden wird, seinen Wert verwenden. Die folgenden Zeichenketten werden gelesen: io.systemd.boot.kernel-cmdline-extra Falls gesetzt, wird der Wert dieser Zeichenkette zu der Liste der Kernelbefehlszeilenargumente fur Systemstartlader-Spezifikationstyp-1-Eintrage hinzugefugt, die in PCR12 eingemessen und an den Kernel ubergeben werden. Hinzugefugt in Version 256. io.systemd.boot-entries.extra:ID=DEFINITION Dies ermoglicht das Einfugen zusatzlicher Eintrage in das systemd-boot-Menu. Akzeptiert ein Paar aus Menueintragskennzeichner und Menuedefinitionszeichenkette. Ersterer sollte zur Verwendung als Dateiname fur einen Systemstartspezifikation-Typ-#1-Eintragsdateinamen geeignet sein (beachten sie, dass dies nur zu Zwecken der Identifikation verwandt wird, es wird auf keine Datei mit diesem Namen tatsachlich zugegriffen). Letzterer sollte der Syntax fur Inhalte von Type-#1-Eintragen folgen. Jeder auf diesem Weg definierte Menueintrag wird verarbeitet und auf ziemlich die gleiche Art wie ein Typ-#1-Eintrag angezeigt, der von der ESP- oder XBOOTLDR-Partition gelesen wird. Beispiel: io.systemd.boot-entries.extra:fooos-current.conf=title FooOS (Aktuell) uki-url http://example.com/somedir/fooos.efi Beachten Sie, dass dieses Beispiel ein Zeilenumbruchzeichen enthalt. Bei der Erstellung dieser Zeichenkette aus einer Shell muss darauf geachtet werden, es korrekt zu kodieren: Ubergeben Sie mehrere, auf diese Art formatierte Zeichenketten, um mehrere Menueintrage zu erstellen. Hinzugefugt in Version 258. io.systemd.boot.loglevel Falls gesetzt wird der Wert dieser Zeichenkette als Protokollierstufe verwandt. Gultige Werte (vom kritischten bis zum unkritischten) sind >>emerg<<, >>alert<<, >>crit<<, >>err<<, >>warning<<, >>notice<<, >>info<< und >>debug<<. Hinzugefugt in Version 259. STARTZAHLUNG systemd-boot implementiert einen einfachen Startzahlungsmechanismus auf Grundlage der UAPI.1-Systemstartlader-Spezifikation[1], fur automatischen und unbeaufsichtigten Ruckfall zu alteren Kernelversionen/Systemstartlader-Eintragen, wenn ein bestimmter Eintrag dauerhaft fehlschlagt. Alle Systemstartlader-Eintragsdateien und vereinigte Kernel-Image-Dateien, bei denen ein >>+<< von einer oder mehreren Zahlen (falls es zwei sind, mussen sie durch ein >>-<< getrennt werden) vor der Endung >>.conf<< oder >>.efi<< gefolgt ist, unterliegen der Startzahlung: die erste der zwei Zahlen (>>verbliebene Eintrage<<) wird bei jedem Systemstartversuch heruntergezahlt, die zweite der zwei Zahlen (>>unternommene Versuche<<) wird um einen erhoht (falls >>unternommene Versuche<< nicht vorhanden ist, wird es als 0 angenommen). Abhangig vom aktuellen Wert dieser zwei Zahler wird der Systemstart-Eintrag einem der drei Zustande zugeordnet: 1. Falls der Zahler >>verbliebene Eintrage<< eines Eintrages grosser 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 funktionstuchtig erkannt wurde. 2. Falls der Zahler >>verbliebene Eintrage<< 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, ausser alle anderen Systemlader-Eintrage sind auch in einem >>schlechten<< Zustand), da alle Versuche, diesen Eintrag zu starten, nicht erfolgreich abgeschlossen wurden. 3. Falls die Zahler >>verbliebene Eintrage<< und >>unternommene Versuche<< eines Eintrags fehlen, wird er in einem >>guten<< Zustand angenommen. Das bedeutet, dass weiteres Startzahlen fur 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 hinzugefugte Eintrage zum Systemstartlader zuerst im Zustand >>unbestimmt<<, d.h. mit dem Zahler >>verbliebene Eintrage<< grosser als Null. Der Systemstarteintrag verbleibt in diesem Zustand, bis er entweder mindestens einmal erfolgreich durchgefuhrt wurde (woraufhin er sich im Zustand >>gut<< befindet) -- oder der Zahler >>verbliebene Eintrage<< erreicht Null (woraufhin er sich im Zustand >>schlecht<< befindet). Beispiel: Die Systemstartladereintragsdatei foo.conf ist fur 3 Startversuche eingerichtet. Das Installationsprogramm wird es daher unter dem Namen foo+3.conf erstellen. Beim ersten Systemstart wird der Systemlader ihn in foo+2-1.conf umbenennen. Falls dieser Systemstart nicht erfolgreich abgeschlossen werden kann, wird ihn der Systemstartlader in foo+1-2.conf beim nachfolgenden Systemstart umbenennen. Falls dieser auch fehlschlagt, wird er schliesslich in foo+0-3.conf beim nachfolgenden Systemstart umbenannt, anschliessend 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 Systemstartmenu berucksichtigt den Zahler >>verbliebene Eintrage<< bei der Sortierung der Menueintrage: Eintrage im >>schlechten<< Zustand werden am Anfang der Liste einsortiert und Eintrage im >>guten<< oder >>unbestimmten<< Zustand am Ende. Der Benutzer kann frei den zu startenden Eintrag aus dem Menu aussuchen, auch die bereits als >>schlecht<< markierten. Falls der zu startende Eintrag automatisch bestimmt wird, bedeutet dies, dass >>gute<< oder >>unbestimmte<< Eintrage im Allgemeinen bevorzugt werden (da der unterste Eintrag im Menu standardmassig gestartet wird) und >>schlechte<< Eintrage nur berucksichtigt werden, falls keine >>guten<< oder >>unbestimmten<< Eintrage verblieben sind. Das Kernelinstallationsrahmenwerk kernel-install(8) setzt optional den anfanglichen Zahler >>verbliebene Eintrage<< auf den in /etc/kernel/tries festgelegten Wert, wenn ein Systemstarteintrag erstmals erstellt wird. VERWENDUNG VON SYSTEMD-BOOT IN VIRTUELLEN MASCHINEN Bei der Verwendung von Qemu[4] mit OVMF[5] (UEFI Firmware fur virtuelle Maschinen) funktioniert der Schalter -kernel nicht nur fur Linux-Kernel, sondern fur jedes EFI-Programm, einschliesslich systemd-boot und vereinigte Linux-Kernel (UKI). Zum Laden von systemd-boot auf X64 kann beispielsweise folgende Befehlszeile dienen: qemu-system-x86_64 -drive if=pflash,format=qcow2,readonly=on,file=/usr/share/edk2/ovmf/OVMF_CODE_4M.qcow2 -kernel /usr/lib/systemd/boot/efi/systemd-bootx64.efi -drive file= [ ] (Der Pfad zu der Firmware-Dtei konnte abhangig von der Distribution angepasst werden mussen.) systemd-boot wird erkennen, dass es direkt gestartet wurde, statt vom ESP geladen zu werden und wird in diesem Fall nach dem ESP suchen und dabei die Systemstartreihenfolgeinformationen vom Hypervisor berucksichtigen (falls verfugbar). Beachten Sie, dass ein weiteres Argument -drive verwandt werden muss, um das tatsachliche Plattenabbild an ein ESP anzuhangen, damit dies ein nutzliches Ergebnis liefert. SIEHE AUCH bootctl(1), loader.conf(5), systemd-bless-boot.service(8), systemd-boot-random-seed.service(8), kernel-install(8), systemd-stub(7), UAPI.1-Systemstartlader-Spezifikation[1], Systemstartlader-Schnittstelle[2], Von Systemd durchgefuhrte TPM2-PCR-Messungen[6] ANMERKUNGEN 1. UAPI.1-Systemstartladerspezifikation https://uapi-group.org/specifications/specs/boot_loader_specification 2. Systemstartlader-Schnittstelle https://systemd.io/BOOT_LOADER_INTERFACE 3. Automatische Systemstartbeurteilung https://systemd.io/AUTOMATIC_BOOT_ASSESSMENT 4. Qemu https://www.qemu.org/docs/master/ 5. OVMF https://www.linux-kvm.org/downloads/lersek/ovmf-whitepaper-c770f8c.txt 6. Von Systemd durchgefuhrte TPM2-PCR-Messungen https://systemd.io/TPM2_PCR_MEASUREMENTS UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . systemd 260.2 SYSTEMD-BOOT(7)