Diese Befehle sind für alle Systemstartprogramme verfügbar, die die Systemladerspezifikation[1] und die Systemladerschnittstelle[2] implementieren, wie systemd-boot.
set-default KENNUNG, set-oneshot KENNUNG
Setzt den Standard-Systemstartprogrammeintrag. Akzeptiert eine einzelne Systemstartprogrammeintragskennungszeichenkette oder ein Glob-Muster als Argument. Der Befehl
set-oneshot setzt den Vorgabeeintrag nur für den nächsten Systemstart,
set-default setzt ihn dauerhaft für alle zukünftigen Systemstarts.
bootctl list kann zur Auflistung verfügbarer Systemladereinträge und ihrer Kennungen verwandt werden.
Zusätzlich kann die Systemstartpogrammladeeintragskennung als eine der folgenden angegeben werden: @default, @oneshot oder @current, was dem aktuellen Standardsystemstartladeeintrag für alle zukünftigen Systemstarts, dem aktuellen Vorgabe-Systemstartladeeintrag für den nächsten Systemstart und dem derzeit gestarteten Systemstartladeeintrag entspricht. Diese besonderen Kennungen werden auf die aktuellen Werte der EFI-Variablen LoaderEntryDefault, LoaderEntryOneShot und LoaderEntrySelected aufgelöst, siehe Systemladerspezifikation[1] für Details. Diese besonderen Kennungen sind primär als schnelle Angabe nützlich, um den aktuellen Systemstartladeeintrag dauerhaft als Vorgabeauswahl zu setzen oder den aktuellen Systemstartladeeintrag für den nächsten Systemstart auf den Standard-Systemstartladeeintrag für alle zukünftigen Systemstarts zu aktualisieren, kann aber auch für andere Aktionen verwandt werden.
Falls auf @saved gesetzt wird der ausgewählte Eintrag bei jedem Systemstart als eine EFI-Variable gesetzt und automatisch ausgewählt, wenn das Systemladeprogramm das nächste Mal startet.
Wenn die leere Zeichenkette ("") als die Kennung angegeben wird, dann wird die entsprechende EFI-Variable zurückgesetzt.
Tipp: Verwenden Sie systemctl reboot --boot-loader-entry=Kennung, um in einen bestimmten Systemstarteintrag neuzustarten und systemctl reboot --boot-loader-menu=Zeitüberschreitung, um einmalig in das Systemladermenü neuzustarten. Siehe systemctl(1) für Details.
Hinzugefügt in Version 240.
set-timeout ZEITÜBERSCHREITUNG, set-timeout-oneshot ZEITÜBERSCHREITUNG
Setzt die Zeitüberschreitung des Systemstartmenüs in Sekunden. Der Befehl
set-timeout-oneshot setzt die Zeitüberschreitung nur für den nächsten Systemstart. Siehe
systemd.time(7) für Details über die Syntax von Zeitspannen.
Falls auf menu-disabled oder menu-hidden oder 0 gesetzt, wird kein Menü gezeigt und der Vorgabeeintrag wird sofort gestartet, während die Einstellung menu-force die Zeitüberschreitung deaktiviert und das Menü immer zeigt. Wird eine leere Zeichenkette ("") angegeben, wird das Systemstartprogramm zu seiner Standard-Menü-Zeitüberschreitung zurückkehren.
Hinzugefügt in Version 250.
Diese Befehle verwalten das EFI-Systemstartprogramm systemd-boot und funktionieren nicht mit anderen Systemstartprogrammen zusammen.
install
Installiert
systemd-boot in die EFI-Systempartition. Eine Kopie von
systemd-boot wird in dem EFI-Standard/Ausweich-Lader unter
ESP/EFI/BOOT/BOOT*.EFI gespeichert. Das Systemstartprogramm wird dann am Anfang der Systemstartprogrammliste der Firmware hinzugefügt.
Hinzugefügt in Version 239.
update
Aktualisiert alle installierten Versionen von
systemd-boot(7), falls die verfügbare Version neuer als die in der EFI-System-Partition installierte ist. Dies beinhaltet den EFI-Standard/Ausweich-Lader unter
ESP/EFI/BOOT/BOOT*.EFI. Das Systemstartprogramm wird dann am Ende der Systemstartprogrammliste der Firmware hinzugefügt, falls es fehlt.
Hinzugefügt in Version 239.
remove
Entfernt alle installierten Versionen von
systemd-boot aus der EFI-Systempartition und der Systemstartprogrammliste der Firmware.
Hinzugefügt in Version 239.
is-installed
Prüft, ob
systemd-boot in der ESP installiert ist. Beachten Sie, dass ein einzelner ESP mehrere Systemstartprogramme beherbergen kann; daher prüft dies, ob
systemd-boot einer (unter möglicherweise vielen) installierten Systemstartprogrammen ist. Es prüft auch, ob es das Vorgabesystemstartprogramm ist und ob es in irgendwelchen EFI-Variablen registriert ist.
Hinzugefügt in Version 243.
random-seed
Erstellt einen Zufallsstartwert und speichert ihn für die Verwendung durch das Systemstartprogramm
systemd-boot in der EFI-Systempartition (ESP). Falls im ESP bereits ein Zufallsstartwert existiert, wird er erneuert. Erstellt auch ein zufälliges »Systemmerkmal« und speichert es dauerhaft als eine EFI-Variable, falls es nicht bereits vorher gesetzt wurde. Falls das Systemstartprogramm einen Zufallsstartwert in der ESP und das Systemmerkmal in der EFI-Variable findet, wird es aus einer Kombination aus beiden einen Zufallsstartwert ableiten, um ihn an das Betriebssystem weiterzugeben und einen neuen Startwert, um ihn in der ESP zu speichern. Der an das Betriebssystem weitergegebene Zufallsstartwert wird dem Entropie-Fundus des Kernels während der frühen Systemstartphase gutgeschrieben und erlaubt es Programmen auf der Anwendungsebene, mit einem Entropie-Fundus hochzufahren, der von einem frühen Zeitpunkt an bereits komplett initialisiert ist. Siehe auch
systemd-boot-random-seed.service(8).
Siehe Zufallsstartwerte[3] für weitere Informationen.
Hinzugefügt in Version 243.
Die folgenden Optionen werden verstanden:
--esp-path=
Pfad zu der EFI-Systempartition (ESP). Falls nicht angegeben, werden /efi/, /boot/ und /boot/efi/ der Reihe nach geprüft. Es wird empfohlen, falls möglich, die ESP unter /efi/ einzuhängen.
--boot-path=
Pfad zu der »Extended Boot Loader«-Partition, wie diese in der Systemladerspezifikation[1] definiert ist. Falls nicht angegeben, wird /boot/ geprüft. Es wird empfohlen, falls möglich, die »Extended Boot Loader«-Partition unter /boot/ einzuhängen.
--root=Wurzel
Akzeptiert einen Verzeichnispfad als Argument. Allen Pfaden wird der angegebene alternative
Wurzel-Pfad vorangestellt, einschließlich der Suchpfade für die Konfiguration.
Hinzugefügt in Version 252.
--image=Abbild
Akzeptiert einen Pfad zu einer Plattenabbilddatei oder einem Blockgerätenamen. Falls angegeben, werden alle Aktionen auf das Dateisystem in dem angegebenen Plattenabbild angewandt. Diese Option ist ähnlich zu
--root=, agiert aber auf Dateisystemen, die in Plattenabbildern oder Blockgeräten gespeichert sind. Das Plattenabbild sollte entweder nur ein Dateisystem oder eine Reihe von Dateisystemen innerhalb einer GPT-Partitionstabelle enthalten, die der
Spezifikation für auffindbare Partitionen[4] folgt. Für weitere Informationen über unterstützte Plattenabbilder, siehe den Schalter von
systemd-nspawn(1) mit dem gleichen Namen.
Hinzugefügt in Version 252.
--image-policy=Richtlinie
Akzeptiert gemäß
systemd.image-policy(7) eine Abbildrichtlinienzeichenkette als Argument. Die Richtlinie wird bei Aktionen auf dem mittels
--image= angegebenen Plattenabbild durchgesetzt, siehe oben. Falls nicht angegeben ist die Vorgabe die Richtlinie »*«, d.h. alle erkannten Dateisysteme im Abbild werden verwandt.
--install-source=
Bei der Installation von Programmen mit
--root= oder
--image= wählt dies aus, woher diese stammen. Akzeptiert entweder »auto« (die Vorgabe), »image« oder »host«. Mit »auto« werden die Programme auf dem angegebenen Verzeichnis oder Abbild aufgenommen und falls sie nicht gefunden werden, werden sie vom Rechner aufgenommen. Mit »image« oder »host« wird keine Rückfallsuche durchgeführt, falls die Programme nicht in der ausgewählten Quelle gefunden werden.
Hinzugefügt in Version 252.
-p, --print-esp-path
Diese Option verändert das Verhalten von
status. Es werden nur die Pfade zu der EFI-Systempartition (ESP) auf der Standardausgabe ausgegeben und das Programm beendet.
Hinzugefügt in Version 236.
-x, --print-boot-path
Diese Option verändert das Verhalten von
status. Gibt in die Standardausgabe nur den Pfad zu der »Extended Boot Loader«-Partition aus, falls diese existiert, und andernfalls den Pfad zur ESP. Danach beendet er sich. Dieser Befehl ist nützlich, um zu bestimmen, wo Boot-Loader-Einträge abgelegt werden, da sie bevorzugt in die »Extended Boot Loader«-Partition abgelegt werden, falls diese existiert, und andernfalls in der ESP.
Systemladerspezifikationseinträge vom Typ #1 sollten im Allgemeinen im Verzeichnis »$(bootctl -x)/loader/entries/« abgelegt werden. Die Existenz dieses Verzeichnisses kann auch als Anzeichen dafür verwandt werden, dass auf dem System die Unterstützung für Systemladeeinträge verfügbar ist. Ähnlich sollten Systemladerspezifikationseinträge vom Typ #2 im Verzeichnis »$(bootctl -x)/EFI/Linux/« abgelegt werden.
Beachten Sie, dass diese Option (ähnlich der oben erwähnten Option --print-boot-path) unabhängig vom verwandten Systemstartprogramm verfügbar ist, d.h. auch ohne dass systemd-boot installiert ist.
Hinzugefügt in Version 242.
-R, --print-root-device
Gibt den Pfad zu dem Blockgerät aus, dass dem Wurzeldateisystem des lokalen Betriebssystems zu Grunde liegt. Dies gibt eine Pfad der Art /dev/nvme0n1p5 aus. Falls dm-crypt/LUKS oder dm-verity dem Wurzeldateisystem unterliegt, wird das darunterliegende Blockgerät zurückgeliefert. Falls mehrere Blockgeräte (wie von Btrfs unterstützt) dem Wurzeldateisystem zu Grunde liegen, schlägt diese Aktion fehl. Falls der Schalter zweimal angegeben ist (d.h.
-RR) und das erkannte Blockgerät ein Partitionsgerät ist, wird das »gesamte« Blockgerät, zu dem es gehört, bestimmt und ausgegeben (z.B. /dev/nvme0n1). Falls das Wurzeldateisystem »tmpfs« (oder ein ähnliches, speicherinternes Dateisystem) ist, wird das /usr/ zugrunde liegende Blockgerät zurückgeliefert, falls zutreffend. Falls das Wurzeldateisystem ein Netzwerkdateisystem (z.B. NFS, CIFS) ist, schlägt diese Aktion fehl.
Hinzugefügt in Version 254.
--no-variables
Fasst die Liste der Systemladeprogramme der Firmware, die in EFI-Variablen gespeichert ist, nicht an.
Hinzugefügt in Version 220.
--graceful
Ignoriert Fehlschläge, wenn die EFI-Systempartition nicht gefunden, die EFI-Variablen nicht geschrieben werden können oder ein anderes oder neueres Systemstartprogramm bereits installiert ist. Gilt derzeit nur für die Unterbefehle
is-installed,
update und
random-seed.
Hinzugefügt in Version 244.
-q, --quiet
Unterdrückt die Ausgabe der Ergebnisse von verschiedenen Befehlen und auch der Hinweise, dass der ESP nicht verfügbar ist.
Hinzugefügt in Version 251.
--make-entry-directory=yes|no
Steuert die Erstellung und Löschung der
Systemladerspezifikation[1] Typ-#1-Eintragsverzeichnisse auf dem Dateisystem, das die Ressourcen wie Kernel- und Initrd-Abbilder während
install bzw.
remove enthält. Das Verzeichnis wird nach dem Eintragsmerkmal benannt, wie dieses mit dem nachfolgend beschriebenen Parameter
--entry-token= angegeben wird, und wird direkt unterhalb des
$BOOT Wurzelverzeichnisses abgelegt (d.h. unterhalb des Dateisystems, das von der Option
--print-boot-path zurückgeliefert wird, siehe oben). Standardmäßig »no«.
Hinzugefügt in Version 251.
--entry-token=
Steuert, wie die Systemstartprogrammeinträge für diese Betriebssysteminstallation benannt und identifiziert werden sollen. Wird während
install berücksichtigt und akzeptiert entweder »auto«, »machine-id«, »os-id«, »os-image-id« oder eine beliebige Zeichenkette, der »literal:« vorangestellt ist, als Argument.
Wird dies auf machine-id gesetzt, dann werden die Einträge nach der Maschinenkennung des laufenden Systems benannt (z.B. »b0e793a9baf14b5fa13ecbe84ff637ac«). Siehe machine-id(5) für Details über das Konzept der Maschinenkennung und der Datei.
Falls auf os-id gesetzt, werden die Einträge nach der Betriebssystemkennung des laufenden Systems benannt, d.h. dem Feld ID= von os-release(5) (z.B. »fedora«). Ähnlich werden die Einträge nach der Betriebssystem-Abbild-Kennung des laufenden Systems benannt, falls es auf os-image-id gesetzt ist, d.h. dem Feld IMAGE_ID= von os-release (z.B. »vendorx-cashier-system«).
Falls auf auto (der Vorgabe) gesetzt, wird die Datei /etc/kernel/entry-token eingelesen, falls sie existiert, und der gespeicherte Wert wird verwandt. Andernfalls wird die lokale Maschinenkennung verwandt, falls diese initialisiert wurde. Andernfalls wird IMAGE_ID= aus os-release verwandt, falls gesetzt. Andernfalls wird ID= aus os-release verwandt, falls gesetzt.
Die ausgewählte Merkmalzeichenketten wird in eine Datei /etc/kernel/entry-token geschrieben, außer »machine-id« ist gesetzt oder --make-entry-directory=yes wird verwandt, um sicherzustellen, das sie für zukünftige Einträge verwandt wird. Diese Datei wird auch von kernel-install(8) eingelesen, um zu ermitteln, unter welchem Namen Systemstarteinträge für neu installierte Kernel erstellt werden oder die Eintragsnamen zum Entfernen alter zu bestimmen.
Die Verwendung der Maschinenkennung zur Benennung der Einträge sollte bevorzugt werden, allerdings gibt es Fälle, bei denen die Verwendung anderer Kennzeichner eine gute Option ist. Insbesondere dann, wenn die Kennzeichnungsdaten, die die Maschinenkennung enthält, nicht auf der (unverschlüsselten) Partition $BOOT gespeichert werden sollen oder falls die Kennung nicht beim ersten Systemstart erstellt werden soll und es nicht bekannt ist, wenn die Einträge vorbereitet werden. Beachten Sie, dass die Verwendung der Maschinenkennung den Vorteil hat, dass mehrere parallele Installationen des gleichen Betriebssystems auf dem gleichen Medium koexistieren können und dass sie ihre Systemstartladereinträge unabhängig voneinander aktualisieren können. Bei der Verwendung eines anderen Kennzeichners (wie der Betriebssystemkennung oder der Betriebssystem-Abbildkennung), würden parallele Installationen des gleichen Betriebssystems versuchen, den gleichen Eintragsnamen zu verwenden. Um parallele Installationen zu unterstützen, muss das Installationsprogramm verschiedene Eintragskennzeichnungen beim Hinzufügen einer zweiten Installation verwenden.
Hinzugefügt in Version 251.
--all-architectures
Installiert Programme für alle unterstützten EFI-Architekturen (dies impliziert
--no-variables).
Hinzugefügt in Version 252.
--efi-boot-option-description=
Beschreibung des zu der Systemstart-Optionsliste der Firmware hinzugefügten Eintrags. Standardmäßig »Linux Boot Manager«.
Die Verwendung des Vorgabe-Eintragsnamens »Linux Boot Manager« wird im Allgemeinen bevorzugt, da nur ein Systemladeprogramm, installiert auf einer einzelnen ESP-Partition zum Starten einer Reihe von Betriebssysteminstallationen verwandt werden sollte, die auf verschiedenen Platten im System installiert sind. Insbesondere sollten Distributionen diesen Schalter nicht verwenden, um einen an sie angepassten Eintrag in der Systemstart-Optionsliste zu installieren. In Situationen mit mehreren Platten, jeweils mit ihrer eigenen ESP-Partition, kann es von Vorteil sein, die Identifikation der zu verwendenden Systemstartladeprogramme in dem Systemstart-Optionsmenü der Firmware zu erleichtern.
Hinzugefügt in Version 252.
--dry-run
Probemodus für
unlink und
cleanup.
Im Probemodus werden die Entfernungs- und Bereinigungsaktionen nur die Dateien ausgeben, die gelöscht würden, ohne sie tatsächlich zu löschen.
Hinzugefügt in Version 253.
--no-pager
Leitet die Ausgabe nicht an ein Textanzeigeprogramm weiter.
--json=MODUS
Zeigt die Ausgabe als JSON formatiert. Erwartet entweder »short« (für die kürzest mögliche Ausgabe ohne unnötigen Leerraum oder Zeilenumbrüche), »pretty« (für eine schönere Version der gleichen Ausgabe, mit Einzügen und Zeilenumbrüchen) oder »off« (um die standardmäßig aktivierte JSON-Ausgabe auszuschalten).
-h, --help
Zeigt einen kurzen Hilfetext an und beendet das Programm.
--version
Zeigt eine kurze Versionszeichenkette an und beendet das Programm.