Nach drei Monaten Entwicklungszeit ist die Version 262 des Systemmanagers systemd verfĂŒgbar. In dieser neuen Version wurde die Integration eines minimalen Satzes von Unit-Dateien implementiert, die UnterstĂŒtzung fĂŒr die statische Verlinkung bereitgestellt, eine Integration mit dm-clone fĂŒr das Klonen von BlockgerĂ€ten durchgefĂŒhrt, die Datenbank der installierten Dateien in systemd-sysupdate hinzugefĂŒgt und eine kryptografische ĂberprĂŒfung der Berichte von systemd-report ermöglicht.
Zu den Ănderungen in der neuen Version gehören:
- In die ausfĂŒhrbare Datei des Systemmanagers wurde eine Reihe grundlegender Unit-Dateien (basic.target, sysinit.target, multi-user.target, reboot.target, shutdown.target, systemd-poweroff.service usw.) integriert, die verwendet werden, wenn das Laden von Unit-Dateien von der Festplatte nicht möglich ist. Diese Integration ermöglicht das Starten von Containern mit dem Init-Prozess (PID1) auf Basis von systemd, ohne dass Unit-Dateien installiert werden mĂŒssen.
- Die UnterstĂŒtzung fĂŒr den Bau einer einzelnen statisch verlinkten ausfĂŒhrbaren Datei wurde hinzugefĂŒgt, die zur Initialisierung und zum Starten von Diensten in Containern mit minimaler Ausstattung verwendet werden kann. Um eine statische Verlinkung bei der AusfĂŒhrung von meson anzugeben, sollten die Flags: ââdefault-library=static âprefer-static -Dbuild-static=true -Dsystemd-multicall-binary=trueâ angegeben werden.
- Die UnterstĂŒtzung des Kernelmoduls dm-clone wurde integriert, das es ermöglicht, auf Basis eines im Nur-Lese-Modus verfĂŒgbaren BlockgerĂ€ts einen schreibfĂ€higen Klon zu erstellen. Die Einstellungen aus /etc/clonetab werden vom systemd-clonesetup-generator verarbeitet und in Form von unit-Files systemd-clonesetup@.service gespeichert, die an clonesetup.target gebunden sind. Zum Erstellen und Entfernen von Klonen von BlockgerĂ€ten wurde das Dienstprogramm systemd-clonesetup hinzugefĂŒgt.
- Die Möglichkeiten des Tools systemd-sysupdate wurden erweitert, um automatisches Erkennen, Herunterladen und Installieren von Updates mithilfe eines atomaren Mechanismus zum Ersetzen von Partitionen, Dateien oder Verzeichnissen zu ermöglichen (es werden zwei unabhĂ€ngige Partitionen/Dateien/Verzeichnisse verwendet, von denen eine das aktuelle, aktive Element enthĂ€lt, wĂ€hrend auf der anderen das nĂ€chste Update installiert wird, wonach die Partitionen/Dateien/Verzeichnisse vertauscht werden). Es wurde eine Datenbank zur Speicherung von Informationen ĂŒber alle installierten Dateien implementiert. Der Befehl âsystemd-sysupdate cleanupâ wurde hinzugefĂŒgt, um Dateien zu löschen, die nach einem Systemupdate ĂŒberflĂŒssig geworden sind oder nicht dem aktuellen Konfigurationsmuster entsprechen. Die Befehle âsystemd-sysupdate enable-feature/disable-feature/enable-component/disable-componentâ wurden hinzugefĂŒgt, um die Aktivierung von Funktionen und Komponenten zu steuern. Es wurde das Konzept empfohlener Komponenten umgesetzt; zum Beispiel können mit dem Befehl âsystemd-sysupdate enable-component --component-suggestedâ Treiber aktiviert werden, die fĂŒr den Betrieb der vorhandenen Hardware erforderlich sind. Der Befehl âsystemd-sysupdate updateâ erhielt die Option â--component-allâ, um alle Komponenten auf einmal zu aktualisieren.
- In systemd-report wurde die Option â--sign=â hinzugefĂŒgt, die die Möglichkeit bietet, Berichte, die von den Befehlen âgenerateâ und âuploadâ ausgegeben werden, mit einer digitalen Signatur zu versehen. Drei Backends fĂŒr die Signierung der Berichte wurden vorgeschlagen: systemd-report-sign-plain (Ed25519), systemd-report-sign-tsm (configfs TSM) und systemd-report-sign-tpm2 (TPM2 PCR).
- Um die Last im Falle eines massiven Neustarts von Diensten nach AusfĂ€llen zu glĂ€tten, wurde der Parameter RestartRandomizedDelaySec vorgeschlagen, der eine zufĂ€llige Verzögerung vor dem automatischen Neustart des Dienstes hinzufĂŒgt, die innerhalb festgelegter Grenzen liegt.
- In Slice-Einheiten wurde der Parameter ActivatingConcurrencyMax hinzugefĂŒgt, um die maximale Anzahl von gleichzeitig aktivierten Einheiten in der Hierarchie zu begrenzen.
- FĂŒr Dienste wurde der Parameter LUOSession implementiert, der zur Erstellung von Live Update Orchestrator-Sitzungen dient, die zur Aktualisierung des Kernels im Live-Modus ohne Unterbrechung des Betriebs und ohne Verlust des System-, GerĂ€te- und Prozessstatus verwendet werden.
- In Socket-Einheiten wurden die Parameter XAttrEntryPoint, XAttrListen und XAttrAccept implementiert, die es ermöglichen, erweiterte Attribute (xattr) an UNIX-Sockets anzuhÀngen, um sie zu kennzeichnen.
- FĂŒr die automatische Vergabe von leicht merkbaren Hostnamen (/etc/hostname) wurde ein neues Platzhalterzeichen â$â implementiert, das durch ein Element aus einer Liste von Wörtern ersetzt wird, das durch ein Hashing mit der System-ID gewĂ€hlt wird.
- Das Tool run0 hat sudo-kompatible Optionen -k/âreset-timestamp, -K/âremove-timestamp und -v/âvalidate zur Widerrufung oder Aktualisierung der zeitlichen Autorisierung durch polkit erhalten.
- Dem Tool systemd-escape wurde die Option ââstdinâ zum Lesen von Zeichenfolgen aus der Standardeingabe hinzugefĂŒgt.
- In vconsole wurde die Umgebungsvariable FONT_SCALE zur Anpassung des SchriftgradmaĂstabs Ă€hnlich dem Kernelparameter vconsole.font_scale hinzugefĂŒgt (derzeit werden nur 100% und 200% unterstĂŒtzt).
- Allen Befehlen, die die Option ââhelpâ unterstĂŒtzen, wurde die Option ââintrospect-cliâ hinzugefĂŒgt, um eine Hilfestellung im JSON-Format bereitzustellen, die die Automatisierung der ĂberprĂŒfung der erforderlichen Optionen aus Erweiterungen und Skripten erleichtert.
- Bei der Authentifizierung mit FIDO2-Token wird die Anzahl der verbleibenden Versuche zur Eingabe der PIN angezeigt.
- In systemd-networkd wurde in der Sektion â[Match]â der Dateien .link, .network und .netdev eine PrĂŒfung auf MachineTag hinzugefĂŒgt, die es ermöglicht, Netzwerkeinstellungen an das Vorhandensein oder Fehlen bestimmter Tags zu binden. Der Befehl ânetworkctl reloadâ hat die Option ââno-reconfigureâ erhalten, um die Dateien .network und .netdev von der Festplatte neu zu laden, ohne die bestehenden Netzwerkverbindungen neu zu konfigurieren. In .network-Dateien wurde es erlaubt, mehrere Namen von NetzwerkgerĂ€ten fĂŒr die Parameter IPoIB, IPVLAN, IPVTAP, MACsec, MACVLAN, MACVTAP, Tunnel, VLAN, VXLAN und Xfrm durch Leerzeichen getrennt anzugeben.
- In systemd-journald wurde der Mechanismus FSS (Forward Secure Sealing), der die UnverÀnderlichkeit von Logs gewÀhrleistet, auf die Verwendung von Krypto-Funktionen aus der OpenSSL-Bibliothek anstelle von libgcrypt umgestellt. Die Bibliothek libsystemd wird nun nicht mehr mit libgcrypt verbunden.
- Das Tool systemd-sysctl hat die Option ââverifyâ hinzugefĂŒgt, bei der der Wert des sysctl-Parameters nach der Einstellung gelesen und mit dem ursprĂŒnglichen Wert verglichen wird, um zu ĂŒberprĂŒfen, ob die Ănderung angewendet wurde. Die Optionen ââsave=FILENAMEâ und âârevert=FILENAMEâ wurden hinzugefĂŒgt, um sysctl-Einstellungen zu speichern und wiederherzustellen, die im Verzeichnis /run/sysctl.d/ abgelegt sind.
- Die UnterstĂŒtzung fĂŒr den Aufbau mit der OpenSSL-Bibliothek 4 wurde hinzugefĂŒgt.
Quelle: opennet.ru
