SYSTEMD-SYSUPDATE(8) systemd-sysupdate SYSTEMD-SYSUPDATE(8) BEZEICHNUNG systemd-sysupdate, systemd-sysupdate.service, systemd-sysupdate.timer, systemd-sysupdate-reboot.service, systemd-sysupdate-reboot.timer - Das Betriebssystem oder andere Ressourcen automatisch aktualisieren UBERSICHT systemd-sysupdate [OPTIONEN] systemd-sysupdate.service BESCHREIBUNG systemd-sysupdate aktualisiert atomar das Betriebssystem, Container-Abbilder, portable Diensteabbilder oder andere Quellen, basierend auf den in sysupdate.d(5) beschriebenen Ubertragungskonfigurationsdateien. Dieses Werkzeug implementiert datei-, verzeichnis- oder partitionsbasierte Aktualisierungsschemata, unterstutzt mehrere parallel installierte Versionen bestimmter Ressourcen in einer A/B- (oder sogar A/B/C-, A/B/C/DE- ) Art. A/B-Aktualisierung bedeutet, dass bei der aktuellen Verwendung einer Ressource die nachste an einen komplett anderen Ort heruntergeladen, entpackt und vorbereitet werden kann, unabhangig von der ersten und - sobald abgeschlossen - diese aktiviert werden kann. Dabei werden die Rollen vertauscht, so dass die Neue die verwandte Ressource wird und die bisher eingesetzte diejenige wird, die bei der nachsten Aktualisierung ersetzt werden wird und so weiter. Die zu aktualisierenden Ressourcen werden in Ubertragungsdateien definiert, eine fur jede zu aktualisierende Ressource. Ressourcen, die mit diesem Werkzeug aktualisiert werden konnen, sind beispielsweise eine Wurzeldateisystempartition, eine zugehorige Verity-Partition sowie ein Kernelabbild. Die Kombination dieser drei kann als komplette Betriebssystemaktualisierung betrachtet werden. Das Werkzeug aktualisiert Partitionen, Dateien oder Verzeichnisbaume immer als Ganzes und agiert mit mindestens zwei Versionen jeder Ressource: der aktuellen Version sowie der nachsten Version: diejenige, auf die aktualisiert wird und die anfanglich unvollstandig ist, wahrend die heruntergeladenen Daten geschrieben werden; sowie optional weiteren Versionen. Sobald das Herunterladen einer neueren Version abgeschlossen ist, wird diese die aktuelle Version und gibt die Version, die bisher als aktuelle Version betrachtet wurde, zum Loschen/Ersetzen/Aktualisieren frei. Beim Installieren neuer Versionen wird dieses Werkzeug die neue Version herunterladen, entkomprimieren und entpacken und direkt in das Ziel schreiben. Dies erfolgt auf eine robuste Art, so dass ein unvollstandiges Herunterladen beim nachsten Aufruf erkannt wird und die Reste beseitigt werden, bevor ein neuer Versuch eingeleitet wird. Beachten Sie, dass beim Schreiben von Aktualisierungen in eine Partition diese bereits existieren muss, da systemd-sysupdate nicht automatisch Partitionen erstellen wird. Verwenden Sie Werkzeuge wie systemd-repart(8), um automatisch zusatzliche Partitionen beim Systemstart fur die Verwendung mit systemd-sysupdate zu erstellen. Dieses Werkzeug kann sowohl auf dem laufenden Betriebssystem verwandt werden, um das Betriebssystem >>im Betriebszustand<< aus sich selbst zu aktualisieren und bei >>nicht aktiven<< Plattenabbildern, um diese von ausserhalb, basierend auf der Ubertragung von Dateien, die in diese Abbilder eingebettet sind, zu aktualisieren. Fur Letzteres siehe die nachfolgende Beschreibung von --image=. Letzteres ist insbesondere fur die Aktualisierung von Container-Abbildern oder portierbaren Diensteabildern interessant. Der Systemdienst systemd-sysupdate.service wird das Betriebssystem automatisch basierend auf den installierten Ubertragungsdateien aktualisieren. Er wird regelmassig uber systemd-sysupdate.timer ausgelost. systemd-sysupdate-reboot.service wird das System automatisch nach der Installation einer neuen Version neu starten. Der Systemneustart wird mittels systemd-sysupdate-reboot.timer ausgelost. Die zwei Dienste sind voneinander getrennt, da es typischerweise ratsam ist, Aktualisierungen regelmassig wahrend des Betriebs herunterzuladen, aber Neustarts bis zu einem geeigneten Zeitpunkt zu verzogern (d.h. typischerweise nachts). Die zwei Dienste-/Timer-Unit-Gruppen konnen separat aktiviert werden. Fur Details uber Ubertragungsdateien und Beispiele siehe sysupdate.d(5). BEFEHL Die folgenden Befehle werden verstanden: list [VERSION] Beim Aufruf ohne Argumente werden die herunterladbaren und installierbaren Versionen aufgezahlt und eine zusammenfassende Tabelle mit den erkannten Versionen und ihren Eigenschaften dargestellt. Dazu gehort, ob es neuere Kandidatenversionen gibt, auf die aktualisiert werden kann. Falls ein Versionsargument angegeben ist, werden Details uber die bestimmte Version angezeigt, einschliesslich der einzelnen Dateien, die ubertragen werden mussen, um die neue Version zu erlangen. Falls kein Befehl explizit angegeben ist, wird dieser Befehl impliziert. Hinzugefugt in Version 251. check-new Pruft, ob eine neue Version verfugbar ist. Dies zahlt intern die herunterladbaren und installierten Versionen auf und liefert einen Exit-Status von 0, falls es eine neue Version gibt, auf die aktualisiert werden kann, und ansonsten einen von Null verschiedenen Wert. Falls es eine neue Version gibt, auf die aktualisiert werden kann, dann wird deren Versionskennzeichnung auf die Standardausgabe geschrieben. Hinzugefugt in Version 251. update [VERSION] Installiert (aktualisiert auf) die angegebene Version oder die neuste Version, falls keine Version angegeben ist. Falls die Version bereits installiert ist oder es keine neuere Version gibt, erfolgt keine Aktion. Falls eine neue zu installierende/darauf zu aktualisierende Version gefunden wird, werden alte Versionen geloscht, bis mindestens eine neue Version installiert werden kann. Dies wird mittels InstanceMax= in sysupdate.d(5) oder uber die verfugbaren Partitionsplatze vom richtigen Typ konfiguriert. Diese implizite Aktion kann auch explizit uber den nachfolgend beschriebenen Befehl vacuum aufgerufen werden. Hinzugefugt in Version 251. vacuum Loscht alte installierte Versionen, bis die mittels InstanceMax= in sysupdate.d(5) konfigurierten Beschrankungen wieder eingehalten werden. Normalerweise sollte es nicht notwendig sein, diesen Befehl explizit aufzurufen, da er implizit aufgerufen wird, wenn eine neue Aktualisierung eingeleitet wird. Hinzugefugt in Version 251. pending Pruft, ob eine neuere Version des Betriebssystems als die aktuell laufende installiert ist. Liefert Null zuruck, falls dem so ist und ansonsten einen anderen Wert. Dies vergleicht die Versionskennzeichnung der neusten installierten Version mit der Version des Betriebssystemabbildes, wie es vom Feld IMAGE_VERSION= in /etc/os-release berichtet wird. Falls erstere neuerer als letztere ist, wurde anscheinend eine Aktualisierung abgeschlossen, aber noch nicht aktiviert (d.h. kein Systemneustart hinein durchgefuhrt). Hinzugefugt in Version 251. reboot Ahnlich wie der Befehl pending, startet aber das System sofort neu, falls eine neuere Version des Betriebssystems installiert wurde, als aktuell lauft. Diese Aktion kann implizit zusammen mit dem Befehl update erfolgen, nach einer abgeschlossenen Aktualisierung mittels des Schalters --reboot, siehe unten. Dieser Befehl wird keine Aktion durchfuhren (und Erfolg zuruckliefern), falls keine Aktualisierung installiert wurde und daher das System nicht neugestartet wurde. Hinzugefugt in Version 251. components Fuhrt zu aktualisierende Komponenten auf. Dies zahlt die Verzeichnisse /etc/sysupdate.*.d/, /run/sysupdate.*.d/ und /usr/lib/sysupdate.*.d/ auf, die Ubertragungsdateien enthalten. Dieser Befehl ist zum Auflisten moglicher Parameter fur --component= nutzlich (siehe unten). Hinzugefugt in Version 251. -h, --help Zeigt einen kurzen Hilfetext an und beendet das Programm. --version Zeigt eine kurze Versionszeichenkette an und beendet das Programm. OPTIONEN Die folgenden Optionen werden verstanden: --component=, -C Wahlt die zu aktualisierenden Komponenten aus. Akzeptiert einen Komponentennamen als Argument. Damit wird die Suchlogik fur Ubertragungsdateien leicht verandert. Falls der Schalter nicht verwandt wird, werden die Ubertragungsdateien aus /etc/sysupdate.d/*.conf, /run/sysupdate.d/*.conf und /usr/lib/sysupdate.d/*.conf geladen. Falls dieser Schalter verwandt wird, wird der angegebene Komponentenname verwandt, um die Verzeichnisse, in denen gesucht wird, auf /etc/sysupdate.Komponente.d/*.conf, /run/sysupdate.Komponente.d/*.conf und /usr/lib/sysupdate.Komponente.d/*.conf zu andern. Dabei wird die Zeichenkette Komponente durch den angegebenen Komponentennamen ersetzt. Verwenden Sie den Befehl components, um alle zu aktualisierenden Komponenten aufzulisten. Dies zahlt die Verzeichnisse auf, die auf diese Bennenungsregel passen. Komponenten konnen verwandt werden, um getrennte Gruppen von Ubertragungsdateien fur verschiedene Komponenten des Betriebssystems zu definieren, die getrennt aktualisiert werden sollen. Verwenden Sie dieses Konzept nicht fur Ressourcen, die immer zusammen auf synchrone Art aktualisiert werden sollen. Fur diese Falle definieren Sie einfach mehrere Ubertragungsdateien innerhalb des gleichen sysupdate.d/-Verzeichnisses. Diese Option kann nicht mit --definitions= kombiniert werden. Hinzugefugt in Version 251. --definitions= Ein Pfad zu einem Verzeichnis. Falls angegeben, werden die Ubertragungsdateien *.conf aus diesem Verzeichnis statt aus /usr/lib/sysupdate.d/*.conf, /etc/sysupdate.d/*.conf und /run/sysupdate.d/*.conf gelesen. Diese Option kann nicht mit --component= kombiniert werden. Hinzugefugt in Version 251. --root= Akzeptiert einen Pfad zu einem fur das Suchen nach Dateien sysupdate.d/*.conf als Wurzeldateisystem zu verwendenden Verzeichnis. Hinzugefugt in Version 251. --image= Akzeptiert einen Pfad zu einer Abbilddatei oder zu einem einzuhangenden Gerat, das ahnlich wie --root= verwandt werden soll, siehe oben. Falls dies verwandt wird und Partitionsressourcen aktualisiert werden, dann erfolgt dies innerhalb des angegebenen Plattenabbildes. Hinzugefugt in Version 251. --image-policy=Richtlinie Akzeptiert gemass 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. --instances-max=, -m Akzeptiert eine dezimale Ganzzahl grosser oder gleich 2. Steuert, wie viele Versionen jederzeit behalten werden sollen. Diese Option kann auch innerhalb von Ubertragungsdateien uber die Einstellung InstancesMax= konfiguriert werden, siehe sysupdate.d(5) fur Details. Hinzugefugt in Version 251. --sync= Akzeptiert ein logisches Argument, standardmassig ja. Dies kann zur Festlegung verwandt werden, ob die frisch aktualisierten Ressourcenversionen bei Bedarf auf Platte synchronisiert werden sollen (d.h. nachdem das Herunterladen vollstandig ist, bevor es abgeschlossen wurde und dann nach dem Abschluss). Das sollte nicht ausgeschaltet werden, ausser um die Laufzeitleistung in Testumgebungen zu verbessern. Hinzugefugt in Version 251. --verify= Akzeptiert ein logisches Argument, standardmassig ja. Steuert, ob heruntergeladene Inhalte kryptographisch uberpruft werden sollen. Das sollte nicht ausgeschaltet werden, ausser in Testumgebungen. Hinzugefugt in Version 251. --reboot Startet das System direkt im Anschluss neu, wenn es in Kombination mit dem Befehl update verwandt wird und eine neue Version installiert wurde. Hinzugefugt in Version 251. --no-pager Leitet die Ausgabe nicht an ein Textanzeigeprogramm weiter. --no-legend Gibt die Legende nicht aus, d.h. die Spaltenkopfe und die Fusszeile mit Hinweisen. --json=MODUS Zeigt die Ausgabe als JSON formatiert. Erwartet entweder >>short<< (fur die kurzest mogliche Ausgabe ohne unnotigen Leerraum oder Zeilenumbruche), >>pretty<< (fur eine schonere Version der gleichen Ausgabe, mit Einzugen und Zeilenumbruchen) oder >>off<< (um die standardmassig aktivierte JSON-Ausgabe auszuschalten). EXIT-STATUS Bei Erfolg wird 0 zuruckgegeben, anderenfalls ein Fehlercode ungleich Null. SIEHE AUCH systemd(1), sysupdate.d(5), systemd-repart(8) 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 255 SYSTEMD-SYSUPDATE(8)