UPDATECTL(1) updatectl UPDATECTL(1) BEZEICHNUNG updatectl - Steuerung des System-Aktualisierungsdienstes UBERSICHT updatectl [OPTIONEN] {BEFEHL} [ZIEL] BESCHREIBUNG updatectl kann zum Uberprufen und Installieren von durch systemd-sysupdated.service(8) verwalteten Systemaktualisierungen verwandt werden. BEFEHLE Die folgenden Befehle werden verstanden: list [ZIEL[@VERSION]] Zeigt Informationen uber die Ziele und ihre Versionen. Wird kein ZIEL angegeben, listet dieser Befehl alle verfugbaren Ziele auf. Wird ein ZIEL ohne eine VERSION angegeben, listet dieser Befehl alle bekannten Versionen des angegebenen Ziels auf. Falls eine VERSION angegeben ist, listet dieser Befehl alle bekannten Informationen uber die bestimmte Version auf. Siehe das nachfolgende Beispiel fur Details zur Ausgabe. Hinzugefugt in Version 257. check [ZIEL] Pruft, ob irgendwelche Aktualisierungen fur die angegebenen Ziele verfugbar sind. Falls keine Ziele angegeben sind, wird fur alle verfugbaren Ziele auf Aktualisierungen gepruft. Siehe das nachfolgende Beispiel fur Details zur Ausgabe. Hinzugefugt in Version 257. update [ZIEL[@VERSION]] Aktualisiert die angegebenen Ziele auf die angegebene Version. Falls ein Ziel ohne Version angegeben ist, dann wird es auf die neuste Version aktualisiert. Falls keine Ziele angegeben sind, werden alle verfugbaren Ziele auf die neuste Version aktualisiert. Hinzugefugt in Version 257. vacuum [ZIEL] Bereinigt alte Versionen der angegebenen Ziele. Falls keine Ziele angegeben sind, werden alle verfugbaren Ziele bereinigt. Hinzugefugt in Version 257. features [FUNKTIONALITAT] Wird keine FUNKTIONALITAT angegeben, listet dieser Befehl alle optionalen Funktionalitaten auf. Wird eine FUNKTIONALITAT angegeben, listet dieser Befehl alle bekannten Informationen uber diese Funktionalitat auf. Hinzugefugt in Version 257. enable FUNKTIONALITAT, disable FUNKTIONALITAT Diese Befehl (de)aktivieren optionale Funktionalitaten. Siehe sysupdate.features(5). Diese Befehle agieren immer auf dem Hauptsystem. Standardmassig werden diese Befehle die Systemkonfiguration nur durch die Erstellung oder Entfernung von Erganzungsdateien verandern. Sie werden die aktivierten Funktionalitaten nicht sofort herunterladen oder nach den deaktivierten sofort aufraumen. Aktivierte Funktionalitaten werden heruntergeladen und installiert, sobald das nachste Mal das Ziel aktualisiert wird und deaktivierte Ubertragungen werden bei der nachsten Aktualisierung oder Entfernung des Ziels bereinigt. Ubergeben Sie --now, um die Anderungen sofort anzuwenden. Hinzugefugt in Version 257. -h, --help Zeigt einen kurzen Hilfetext an und beendet das Programm. --version Zeigt eine kurze Versionszeichenkette an und beendet das Programm. OPTIONEN Die folgenden Befehle werden verstanden: --reboot Startet bei der Verwendung mit dem Befehl update das System neu, nachdem die Aktualisierungen vollstandig angewandt wurden. Falls eine Aktualisierung fehlschlagt, wird das System nicht neu gestartet. Startet bei der Verwendung mit den Befehlen enable oder disable und dem Schalter --now das System neu, nachdem das Herunterladen oder Bereinigen vollstandig erfolgt ist. Hinzugefugt in Version 257. --offline Deaktiviert bei der Verwendung mit dem Befehl list das Abrufen von Metadaten aus dem Netzwerk. Damit liefert der Befehl list nur Informationen zuruck, die lokal verfugbar sind (d.h. uber bereits auf dem System installierte Versionen). Hinzugefugt in Version 257. --now Ladt bei der Verwendung mit dem Befehl enable die aktivierten Funktionalitaten herunter und installiert sie. Bei der Verwendung mit dem Befehl disable werden alle heruntergeladenen Ressourcen der deaktivierten Funktionalitaten geloscht. Hinzugefugt in Version 257. -H, --host= Fuhrt die Aktion aus der Ferne aus. Geben Sie den Rechnernamen oder einen Benutzernamen und Rechnernamen (getrennt durch >>@<<) an, zu dem verbunden werden soll. Dem Rechnernamen darf optional ein Port, auf dem SSH auf Anfragen wartet, getrennt durch >>:<< und dann ein Container-Name, abgetrennt durch >>/<<, folgen, womit direkt zu einem bestimmten Container auf dem angegebenen Rechner verbunden wird. Dies verwendet SSH, um mit der Maschinen-Verwalterinstanz auf dem Rechner in der Ferne zu kommunizieren. Container-Namen durfen mit machinectl -H RECHNER aufgezahlt werden. Setzen Sie IPv6-Adressen in Klammern. --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. EXIT-STATUS Bei Erfolg wird 0 zuruckgegeben, anderenfalls ein Fehlercode ungleich Null. UMGEBUNGSVARIABLEN $SYSTEMD_LOG_LEVEL Die maximale Protokollierstufe fur ausgegebene Meldungen (Meldungen mit einer hoheren Protokollierstufe, d.h. weniger wichtige, werden unterdruckt). Akzeptiert eine Kommata-getrennte Liste von Werten. Ein Wert kann einer der folgenden sein (in Reihenfolge absteigender Bedeutung): emerg, alert, crit, err, warning, notice, info, debug oder eine Ganzzahl im Bereich 07. Siehe syslog(3) fur weitere Informationen. Jedem Wert kann optional eine Zeichenkette aus console, syslog, kmsg oder journal gefolgt von einem Doppelpunkt vorangestellt werden, um die maximale Protokollierstufe fur dieses spezielle Protokollierziel zu setzen (d.h. SYSTEMD_LOG_LEVEL=debug,console:info legt fest, dass auf der Stufe >>debug<< protokolliert werden soll, ausser beim Protokollieren auf die Konsole, die auf Stufe >>info<< erfolgen soll). Beachten Sie, dass die globale maximale Protokollierstufe Prioritat gegenuber jeder zielbezogenen maximalen Protokollierstufe hat. $SYSTEMD_LOG_COLOR Ein logischer Wert. Falls true, werden auf das TTY geschriebene Nachrichten gemass ihrer Prioritat eingefarbt. Diese Einstellung ist nur nutzlich, falls die Nachrichten direkt auf das Terminal geschrieben werden, da journalctl(1) und andere Werkzeuge, die Protokolle anzeigen, selbstandig Nachrichten gemass ihrer Protokollierungsstufe einfarben. $SYSTEMD_LOG_TIME Ein logischer Wert. Falls true, wird den Protokollnachrichten der Konsole ein Zeitstempel vorangestellt. Diese Einstellung ist nur nutzlich, falls die Nachrichten direkt auf das Terminal oder in eine Datei geschrieben werden, da journalctl(1) und andere Werkzeuge, die Protokolle anzeigen, selbstandig Zeitstempel basierend auf ihren Metadaten den Nachrichten anhangen. $SYSTEMD_LOG_LOCATION Ein logischer Wert. Falls true, wird den Protokollnachrichten ein Dateiname und eine Zeilenummer in dem Quellcode, aus dem die Nachrichten stammen, vorangestellt. Beachten Sie, dass der Protokollierort sowieso oft als Metadaten zu den Journal-Eintragen angehangt ist. Die Aufnahme in den Nachrichtentext kann bei der Fehlersuche in Programmen dennoch praktisch sein. $SYSTEMD_LOG_TID Ein logischer Wert. Falls true, wird den Nachrichten die aktuelle numerische Thread-Kennung (TID) vorangestellt. Beachten Sie, dass diese Informationen sowieso als Metadaten an Journal-Eintrage angehangt wird. Die Aufnahme direkt im Nachrichtentext kann aber trotzdem bei der Fehlersuche in Programmen praktisch sein. $SYSTEMD_LOG_TARGET Das Ziel fur Protokolliernachrichten. Entweder console (auf das angehangte TTY protokollieren), console-prefixed (auf das angehangte TTY protokollieren, aber die Protokollierstufe und >>Einrichtung<< voranstellen, siehe syslog(3)), kmsg (in den zirkularen Kernel-Protokollpuffer protokollieren), journal (in das Journal protokollieren), journal-or-kmsg (in das Journal protokollieren, falls verfugbar, und andernfalls nach Kmsg), auto (das geeignete Protokollierziel automatisch ermitteln, die Vorgabe) oder null (die Protokollierung deaktivieren). $SYSTEMD_LOG_RATELIMIT_KMSG Ob Kmsg ratenlimitiert werden soll oder nicht. Akzeptiert einen logischen Wert. Standardmassig >>true<<. Falls deaktiviert, wird Systemd die nach Kmsg geschriebenen Meldungen nicht ratenlimitieren. $SYSTEMD_PAGER, $PAGER Zu verwendendes Textanzeigeprogramm, wenn --no-pager nicht angegeben ist. Falls gesetzt, wird $SYSTEMD_PAGER verwandt, andernfalls $PAGER. setzt $PAGER ausser Kraft. Falls weder $SYSTEMD_PAGER noch $PAGER gesetzt sind, wird eine Reihe wohlbekannter Implementierungen von Textanzeigeprogrammen der Reihe nach ausprobiert, einschliesslich less(1) und more(1), bis eines gefunden wird. Falls keine Implementierung eines Textanzeigeprogramms gefunden wird, wird keines aufgerufen. Setzen dieser Umgebungsvariablen auf die leere Zeichenkette oder den Wert >>cat<< ist aquivalent zur Ubergabe von --no-pager. Beachten Sie: Falls $SYSTEMD_PAGERSECURE nicht gesetzt ist, konnen $SYSTEMD_PAGER und $PAGER nur zum Deaktivieren des Seitenanzeigeprogramms (mit >>cat<< oder >><<) verwandt werden und werden ansonsten ignoriert. $SYSTEMD_LESS Setzt die an less ubergebenen Optionen (standardmassig >>FRSXMK<<) ausser Kraft. Benutzer konnten insbesondere zwei Optionen andern wollen: K Diese Option weist das Textanzeigeprogramm an, sich sofort beim Druck von Strg-C zu beenden. Um less die Handhabung von Strg-C selbst zum Umschalten auf die Eingabeaufforderung zu erlauben, setzen Sie diese Option zuruck. Falls der Wert von $SYSTEMD_LESS kein >>K<< enthalt und less das aufgerufene Textanzeigeprogramm ist, wird Strg+C durch das Programm ignoriert und muss durch das Textanzeigeprogramm selbst gehandhabt werden. X Diese Option weist das Textanzeigeprogramm an, keine Termcap-Initialisierungs- und -Deinitalisierungszeichenketten an das Terminal zu senden. Dies ist standardmassig gesetzt, damit die Darstellung von Befehlen selbst nach dem Beenden des Textanzeigeprogramms sichtbar bleibt. Allerdings stehen dadurch einige Funktionen des Textanzeigeprogramms nicht zur Verfugung; insbesondere ist das Scrollen in der Ausgabe mit der Maus nicht moglich. Beachten Sie, dass das Setzen der regularen Umgebungsvariablen $LESS keine Auswirkungen auf die Ausfuhrung von less(1) durch systemd(1)-Werkzeuge hat. Siehe less(1) fur weitere Ausfuhrungen. $SYSTEMD_LESSCHARSET Setzt den an less zu ubergebenden Zeichensatz (standardmassig >>utf-8<<, falls das aufrufende Terminal als UTF-8-kompatibel erkannt wurde) ausser Kraft. Beachten Sie, dass das Setzen der regularen Umgebungsvariablen $LESSCHARSET keine Auswirkungen auf die Ausfuhrungen von less(1) durch systemd(1)-Werkzeuge hat. $SYSTEMD_PAGERSECURE Typische Seitenanzeigeprogramme wie less(1) unterstutzen nebem dem seitenweisen Anzeigen (d.h. dem Durchlaufen der Ausgabe) das Offnen von oder Schreiben in andere Dateien und die Ausfuhrung von beliebigen Shell-Befehlen. Werden Befehle mit erhohten Berechtigungen, beispielsweise unter sudo(8) oder pkexec(1), aufgerufen, wird das Seitenanzeigeprogramm zur Sicherheitsgrenze. Es muss darauf geachtet werden, dass nur Programme mit streng begrenzter Funktionalitat als Seitenanzeigeprogramm verwandt werden und unerwunschte interaktive Funktionalitaten wie das Offnen oder Erstellen von neuen Dateien oder das Starten von Subprozessen nicht erlaubt sind. Der >>Sichere Modus<< fur das Seitenanzeigeprogramm kann wie nachfolgend beschrieben aktiviert werden, falls das Seitenanzeigeprogramm dies unterstutzt (die meisten Seitenanzeigeprogramme sind nicht so geschrieben, dass sie dies berucksichtigen). Es wird empfohlen, den >>Sicheren Modus<< explizit zu aktivieren oder das Seitenanzeigeprogramm komplett mittels --no-pager oder PAGER=cat zu deaktivieren, wenn nicht vertrauenswurdigen Benutzern die Ausfuhrung von Programmen mit erhohten Privilegien erlaubt wird. Diese Option akzeptiert ein logisches Argument. Ist es auf >>true<< gesetzt, wird der >>Sichere Modus<< des Seitenanzeigeprogramms aktiviert. Im >>Sicheren Modus<< wird LESSSECURE=1 beim Aufruf des Seitenanzeigeprogramms gesetzt. Dies weist das Seiteanzeigeprogramm an, Befehle zum Offnen oder Erstellen von neuen Dateien sowie das Starten von Subprozessen zu deaktivieren. Derzeit ist nur von less(1) bekannt, dass es diese Variable versteht und den >>Sicheren Modus<< implementiert. Ist diese Variable auf >>false<< gesetzt, unterliegt das Seitenanzeigeprogramm keinen Beschrankungen. Setzen auf SYSTEMD_PAGERSECURE=0 oder das Beibehalten der Variable von der geerbten Umgebung konnte den Benutzern die Ausfuhrung beliebiger Befehle erlauben. Ist $SYSTEMD_PAGERSECURE nicht gesetzt, versuchen die Systemd-Werkzeuge automatisch herauszufinden, ob der >>Sicheren Modus<< aktiviert werden soll und ob das Seitenanzeigeprogramm dies unterstutzt. Der >>Sichere Modus<< wird aktiviert, falls die effektive UID nicht mit der UID des Eigentumers der Anmeldesitzung ubereinstimmt, siehe geteuid(2) und sd_pid_get_owner_uid(3), oder wenn die Ausfuhrung unter Werkzeugen wie sudo(8) oder ahnlichem erfolgt ($SUDO_UID ist gesetzt [1]). In diesen Fallen wird SYSTEMD_PAGERSECURE=1 gesetzt und Seitenanzeigeprogramme, von denen nicht bekannt ist, dass sie den >>Sicheren Modus<< unterstutzen, werden uberhaupt nicht verwandt. Beachten Sie, dass diese automatische Erkennung nur die typischsten Mechanismen zur Erlangung von Privilegien abdeckt und dem Komfort dient. Es wird empfohlen, explizit $SYSTEMD_PAGERSECURE zu setzen oder das Seitenanzeigeprogramm zu deaktivieren. Beachten Sie, dass auch $SYSTEMD_PAGERSECURE gesetzt sein muss, damit die Variablen $SYSTEMD_PAGER oder $PAGER (ausser zum Deaktivieren des Seitenanzeigeprogramms) berucksichtigt werden. $SYSTEMD_COLORS Akzeptiert ein logisches Argument. Wenn true, werden systemd und verwandte Hilfswerkzeuge Farben in ihrer Ausgabe verwenden, andernfalls wird die Ausgabe einfarbig sein. Zusatzlich kann die Variable eine der folgenden besonderen Werte annehmen: >>16<<, >>256<<, um die Verwendung von Farbe auf die grundlegenden 16 bzw. 256 ANSI-Farben zu beschranken. Dies kann festgelegt werden, um die auf $TERM und der vorliegenden Verbindung der Konsole basierende automatische Entscheidung ausser Kraft zu setzen. $SYSTEMD_URLIFY Dies muss ein logischer Wert sein. Er steuert, ob anklickbare Links fur Terminal-Emulatoren, die dies unterstutzen, erstellt werden sollen. Dies kann angegeben werden, um die Entscheidung, die systemd basierend auf $TERM und anderen Bedingungen trifft, ausser Kraft zu setzen. BEISPIELE Beachten Sie, dass diese Beispiele nur Vorfuhrzwecken dienen und sich die Ausgabe dieser Befehle jederzeit andern kann. Diese Befehle sind fur Anzeigen fur Benutzer gedacht. Wenn Sie maschinenlesbare Ausgabe mogen, verwenden Sie die D-Bus-API org.freedesktop.sysupdate1(5) direkt. Beispiel 1. Ausgabe von >>list<< $ updatectl list TARGET VERSION PATH host 48 sysupdate.d machine:fedora 38 /var/lib/machines/fedora.raw component:shim 15.7 sysupdate.shim.d $ updatectl list host VERSION STATUS 50 candidate 49 available 48 current 47 available 46 available 45 available [...] x 25 available+obsolete x 24 available+obsolete x 23 available+obsolete [] $ updatectl list host@49 Version: 50 State: candidate ChangeLog: https://vendor.com/os/v50.html TYPE PATH PTUUID PTFLAGS SHA256 url-file http://dl.vendor.com/os/uki_50 - - 90f6534282dd720f7a222fa781086990dc9c83e5c7499f085970a8e75e3ac349 url-file http://dl.vendor.com/os/usr_50_981a5b84-a301-c819-f681-3e575fe16f16 981a5b84-a301-c819-f681-3e575fe16f16 - c0596ab1095258ec6f16c7c281a50d71c419a9f587c1ef858cfbbb69fb0a16f3 url-file http://dl.vendor.com/os/verity_50_2f8d0f3b-f80a-6ddc-a556-3722bfbb5b79 2f8d0f3b-f80a-6ddc-a556-3722bfbb5b79 - e1e90a128e038b3a53455e55d1ca717c743aba31fe6b4b4624109df0243c6338 url-file http://dl.vendor.com/os/verity_sig_50 - - ca3d163bab055381827226140568f3bef7eaac187cebd76878e0b63e9e442356 Beispiel 2. Prufen auf und installieren von Aktualisierungen $ updatectl check TARGET UPDATE host 48 -> 50 machine:fedora 38 -> 40 $ updatectl update host machine:fedora@39 [] \/ host@50 \/ machine:fedora@39 SIEHE AUCH systemd(1), systemd-sysupdate(8) systemd-sysupdated.service(8) sysupdate.d(5), ANMERKUNGEN 1. Es wird fur andere Werkzeuge empfohlen, $SUDO_UID geeignet zu setzen und zu uberprufen und es als allgemeine Schnittstelle zu behandeln. 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 259.1 UPDATECTL(1)