Veröffentlichung des Systemmanagers systemd 251

Nach fĂŒnfmonatiger Entwicklung wurde die Version des Systemmanagers systemd 251 veröffentlicht.

Wesentliche Änderungen:

  • Die Systemanforderungen wurden erhöht. Die minimal unterstĂŒtzte Linux-Kernel-Version wurde von 3.13 auf 4.15 angehoben. Ein CLOCK_BOOTTIME-Timer wird benötigt. Zum Erstellen ist ein Compiler erforderlich, der den C11-Standard und GNU-Erweiterungen unterstĂŒtzt (fĂŒr die Header-Dateien wird weiterhin der C89-Standard verwendet).
  • Ein experimentelles Werkzeug namens systemd-sysupdate wurde hinzugefĂŒgt, um Updates automatisch zu erkennen, herunterzuladen und zu installieren, wobei ein atomarer Mechanismus zum Ersetzen von Partitionen, Dateien oder Verzeichnissen verwendet wird (es werden zwei unabhĂ€ngige Partitionen/Dateien/Verzeichnisse verwendet, von denen eines die derzeit aktive Ressource enthĂ€lt und das andere das nĂ€chste Update installiert; anschließend werden die Partitionen/Dateien/Verzeichnisse getauscht).
  • Es wurde eine neue interne Shared Library libsystemd-core-.so eingefĂŒhrt, die im Verzeichnis /usr/lib/systemd/system installiert wird und der vorhandenen Bibliothek libsystemd-shared-.so entspricht. Die Verwendung der Shared Library libsystemd-core-.so ermöglicht eine Reduzierung der GesamtinstallationsgrĂ¶ĂŸe durch die Wiederverwendung von BinĂ€rcode. Die Versionsnummer kann ĂŒber den Parameter 'shared-lib-tag' im Build-System Meson festgelegt werden, was es Distributionen ermöglicht, mehrere Versionen dieser Bibliotheken gleichzeitig bereitzustellen.
  • Es wurde die Übertragung von Umgebungsvariablen an die Handler OnFailure/OnSuccess realisiert, einschließlich $MONITOR_SERVICE_RESULT, $MONITOR_EXIT_CODE, $MONITOR_EXIT_STATUS, $MONITOR_INVOCATION_ID und $MONITOR_UNIT, die Informationen ĂŒber die ĂŒberwachte Einheit enthalten.
  • FĂŒr die Units wurde die Einstellung ExtensionDirectories implementiert, die zur Organisation des Ladens von Systemerweiterungs-Komponenten (System Extension) aus regulĂ€ren Verzeichnissen anstelle von Disk-Images verwendet werden kann. Der Inhalt des Systemerweiterungsverzeichnisses wird mithilfe von OverlayFS auf die Verzeichnishierarchie von /usr/ und /opt/ angewendet und ermöglicht das HinzufĂŒgen zusĂ€tzlicher Dateien zur Laufzeit, selbst wenn die angegebenen Verzeichnisse im Nur-Lese-Modus eingebunden sind. Die Befehlszeile 'portablectl attach —extension=' unterstĂŒtzt nun auch die Angabe eines Verzeichnisses.
  • FĂŒr Units, die vom Systemd-OOMD-Handler aufgrund von Speichermangel in der Systemumgebung zwangsweise beendet wurden, wird das Zeichen 'oom-kill' ĂŒbertragen und in dem Attribut 'user.oomd_ooms' die Anzahl der zwangsweisen Beendigungen reflektiert.
  • Neuerungen bei den Units umfassen die neuen Pfadspezifizierer %y/%Y, welche den normalisierten Pfad zur Unit (unter BerĂŒcksichtigung symbolischer Links) widerspiegeln. ZusĂ€tzlich wurden die Spezifizierer %q zur Einsetzung des Wertes PRETTY_HOSTNAME und %d zur Einsetzung von CREDENTIALS_DIRECTORY hinzugefĂŒgt.
  • In nicht privilegierten Diensten, die von einem normalen Benutzer mit dem Flag „—user“ gestartet werden, ist es erlaubt, die Einstellungen RootDirectory, MountAPIVFS, ExtensionDirectories, *Capabilities*, ProtectHome, *Directory*, TemporaryFileSystem, PrivateTmp, PrivateDevices, PrivateNetwork, NetworkNamespacePath, PrivateIPC, IPCNamespacePath, PrivateUsers, ProtectClock, ProtectKernelTunables, ProtectKernelModules, ProtectKernelLogs und MountFlags zu Ă€ndern. Diese Möglichkeit ist nur verfĂŒgbar, wenn in der Systemumgebung die Benutzer-NamensrĂ€ume (user namespaces) aktiviert sind.
  • In der Einstellung LoadCredential ist es erlaubt, den Namen eines Verzeichnisses als Argument anzugeben; in diesem Fall wird versucht, die Anmeldedaten aus allen Dateien im angegebenen Verzeichnis zu laden.
  • In systemctl gibt es im Parameter „—timestamp“ die Möglichkeit, das Flag „unix“ anzugeben, um die Zeit im epochalen Format anzuzeigen (Anzahl der Sekunden seit dem 1. Januar 1970).
  • In „systemctl status“ wurde das Flag „old-kernel“ implementiert, welches angezeigt wird, wenn der im aktuellen Sitzungskernel verwendete Kernels eine Ă€ltere Versionsnummer hat als das in der System verfĂŒgbaren Basis-Kernel. Außerdem wurde das Flag „unmerged-usr“ hinzugefĂŒgt, um festzustellen, dass der Inhalt der Verzeichnisse /bin/ und /sbin/ nicht ĂŒber symbolische Links auf /usr/ erstellt wurde.
  • FĂŒr von Prozess PID 1 gestartete Generatoren stehen neue Umgebungsvariablen zur VerfĂŒgung: $SYSTEMD_SCOPE (Start aus einem System- oder Benutzerdienst), $SYSTEMD_IN_INITRD (Start aus initrd oder Host-Umgebung), $SYSTEMD_FIRST_BOOT (Indikator fĂŒr den ersten Start), $SYSTEMD_VIRTUALIZATION (Vorhandensein von Virtualisierung oder Start in einem Container) und $SYSTEMD_ARCHITECTURE (Architektur, fĂŒr die der Kernel kompiliert wurde).
  • Im Handler PID 1 wurde die Möglichkeit implementiert, Systemanmeldeinformationen aus dem QEMU-Interface fw_cfg zu laden oder ĂŒber die Angabe des Parameters systemd.set_credential in der Kernel-Befehlszeile. In der Direktive LoadCredential wird eine automatische Suche nach Anmeldeinformationen in den Verzeichnissen /etc/credstore/, /run/credstore/ und /usr/lib/credstore/ gewĂ€hrleistet, wenn ein relativer Pfad als Argument angegeben wird. Ein Ă€hnliches Verhalten gilt fĂŒr die Direktive LoadCredentialEncrypted, bei der zusĂ€tzlich die Verzeichnisse /etc/credstore.encrypted/, /run/credstore.encrypted/ und /usr/lib/credstore.encrypted/ ĂŒberprĂŒft werden.
  • In systemd-journald wurde die Möglichkeit zur Exportierung im JSON-Format stabilisiert. In den Befehlen „journalctl —list-boots“ und „bootctl list“ wurde die UnterstĂŒtzung fĂŒr die Ausgabe im JSON-Format (Flag „—json“) hinzugefĂŒgt.
  • In udev wurden neue Dateien mit hwdb-Datenbanken hinzugefĂŒgt, die Informationen ĂŒber tragbare GerĂ€te (PDAs, Taschenrechner usw.) und GerĂ€te, die zur Erstellung von Audio und Video verwendet werden (DJ-Pulte, Pad-Controller), enthalten.
  • In udevadm wurden neue Optionen hinzugefĂŒgt: „—prioritized-subsystem“, um die PrioritĂ€t der Systemverfolgung festzulegen (wird in systemd-udev-trigger.service verwendet, um BlockgerĂ€te und TPM zuerst zu verarbeiten), „—type=all“, „—initialized-match“ und „—initialized-nomatch“, um initialisierte oder nicht initialisierte GerĂ€te auszuwĂ€hlen. Außerdem gibt es „udevadm info —tree“, um den Objektbaum in der Hierarchie /sys/ anzuzeigen. In udevadm wurden auch neue Befehle „wait“ und „lock“ hinzugefĂŒgt, um auf das Erscheinen eines GerĂ€teeintrags in der Datenbank zu warten und ein BlockgerĂ€t wĂ€hrend der Formatierung oder beim Schreiben der Partitionstabelle zu sperren.
  • Ein neuer Satz symbolischer Links zu GerĂ€ten /dev/disk/by-diskseq/ wurde hinzugefĂŒgt, um BlockgerĂ€te anhand ihrer Sequenznummer zu identifizieren („diskseq“).
  • In die .link-Dateien im Abschnitt [Match] wurde die UnterstĂŒtzung fĂŒr den Parameter „Firmware“ hinzugefĂŒgt, um GerĂ€te anhand der Beschreibung der Firmware zuzuordnen.
  • In systemd-networkd wurde der Standardwert fĂŒr den Scope von unicast-Routen, die ĂŒber den Abschnitt [Route] konfiguriert werden, auf „link“ geĂ€ndert, um das Verhalten des Befehls „ip route“ zu entsprechen. Im Abschnitt [Bridge] wurde die Option Isolated=true|false hinzugefĂŒgt, um das gleichnamige Attribut fĂŒr NetzbrĂŒcken im Kernel zu konfigurieren. Im Abschnitt [Tunnel] wurde die Option External hinzugefĂŒgt, um Tunnel des Typs external (Metadaten-Erfassungsmodus) festzulegen. Im Abschnitt [DHCPServer] wurden die Parameter BootServerName, BootServerAddress und BootFilename hinzugefĂŒgt, um die Adresse des Servers, den Servernamen und den Namen der zu sendenden Bootdatei einzustellen. Server DHCP beim Booten im PXE-Modus. Im Abschnitt [Network] wurde der Parameter L2TP entfernt, stattdessen kann in .netdev-Dateien die neue Einstellung Local in Verbindung mit dem L2TP-Interface verwendet werden.
  • Ein neuer Dienst „systemd-networkd-wait-online@.service“ wurde hinzugefĂŒgt, der verwendet werden kann, um auf das Hochfahren eines bestimmten Netzwerkinterfaces zu warten.
  • Die Möglichkeit zur Verwendung von .netdev-Dateien zur Erstellung virtueller WLAN-GerĂ€te wurde implementiert, fĂŒr deren Konfiguration der Abschnitt [WLAN] vorgeschlagen wird.
  • In den .link/.network-Dateien wurde im Abschnitt [Match] der Parameter Kind implementiert, um nach GerĂ€tetypen („bond“, „bridge“, „gre“, „tun“, „veth“) zuzuordnen.
  • Der Start von systemd-resolved erfolgt jetzt frĂŒher im Bootprozess, einschließlich der AusfĂŒhrung aus initrd, wenn systemd-resolved im initrd-Image vorhanden ist.
  • In systemd-cryptenroll wurde die Option —fido2-credential-algorithm hinzugefĂŒgt, um den VerschlĂŒsselungsalgorithmus fĂŒr Anmeldeinformationen auszuwĂ€hlen, sowie die Option —tpm2-with-pin zur Verwaltung der Eingabe des PIN-Codes beim Entsperren des Partition unter Verwendung von TPM. Eine Ă€hnliche Option tpm2-pin wurde in /etc/crypttab hinzugefĂŒgt. Bei der Entsperrung von GerĂ€ten ĂŒber TPM wird die VerschlĂŒsselung der Parameter zur Verhinderung von SchlĂŒsselabfang gewĂ€hrleistet.
  • In systemd-timesyncd wurde eine D-Bus-API hinzugefĂŒgt, um dynamisch Informationen vom NTP-Server ĂŒber IPC abzurufen.
  • Zur Feststellung der Notwendigkeit einer farblichen Ausgabe in allen Befehlen wird die Umgebungsvariable COLORTERM zusĂ€tzlich zu den zuvor ĂŒberprĂŒften NO_COLOR, SYSTEMD_COLORS und TERM geprĂŒft.
  • Im Build-System Meson wurde die Option install_tag implementiert, um eine selektive Build- und Installationsmöglichkeit fĂŒr benötigte Komponenten wie pam, nss, devel (pkg-config), systemd-boot, libsystemd, libudev anzubieten. Eine Build-Option default-compression wurde hinzugefĂŒgt, um den Kompressionsalgorithmus fĂŒr systemd-journald und systemd-coredump auszuwĂ€hlen.
  • In sd-boot wurde in loader.conf eine experimentelle Einstellung „reboot-for-bitlocker“ hinzugefĂŒgt, um Microsoft Windows mit BitLocker TPM zu starten.

Quelle: opennet.ru

Erwerben Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster