systemd Systemmanager Version 257

Nach sechs Monaten Entwicklungszeit wurde die Veröffentlichung des Systemmanagers systemd 257 vorgestellt. Wichtige Änderungen: neue Dienstprogramme systemd-sbsign und systemd-keyutil, UnterstĂŒtzung fĂŒr MPTCP bei Aktivierung ĂŒber einen Socket, anfĂ€ngliche UnterstĂŒtzung fĂŒr das Erstellen mit der Musl-C-Bibliothek updatectl-Dienstprogramm zur Verwaltung der Installation von Updates ĂŒber systemd-sysupdate, die Möglichkeit, Dienste in separaten PID-Namespaces zu starten, Schutz vor versehentlichem Löschen von Dateien bei Verwendung von „systemd-tmpfiles – purge“.

Zu den Änderungen in der neuen Version gehören:

  • Ein neues Hilfsprogramm, systemd-sbsign, wurde hinzugefĂŒgt, um ausfĂŒhrbare Dateien im PE-Format (Portable Executable) digital zu signieren. Diese Dateien sind fĂŒr den Start im EFI Secure Boot-Modus vorgesehen. Zur Signaturerstellung können Engines und Provider der OpenSSL-Bibliothek verwendet werden. systemd-sbsign kann als Alternative zu den Anwendungen sbsigntool und pesign im ukify-Dienstprogramm beim Erstellen universeller Kernel-Images (UKIs) eingesetzt werden. UKIs kombinieren einen UEFI-Bootloader (UEFI-Boot-Stub) und ein Kernel-Image in einer einzigen Datei. Linux und die initrd-Systemumgebung in den Speicher geladen.
  • Ein neues Dienstprogramm, systemd-keyutil, wurde hinzugefĂŒgt, das verschiedene VorgĂ€nge fĂŒr private SchlĂŒssel und X.509-Zertifikate implementiert. Beispielsweise kann systemd-keyutil verwendet werden, um die FĂ€higkeit zu testen, private SchlĂŒssel und Zertifikate zu laden und daraus öffentliche SchlĂŒssel im PEM-Format zu extrahieren.
  • In den ".socket"-Einheiten, die fĂŒr die Funktion des Socket-Aktivierungsmechanismus (Starten von Prozessen beim Aufbau einer Netzwerkverbindung) zustĂ€ndig sind, wird MPTCP (Multipath TCP) unterstĂŒtzt. MPTCP ist eine Erweiterung des TCP-Protokolls, die den Betrieb einer TCP-Verbindung mit der gleichzeitigen Zustellung von Paketen ĂŒber mehrere Routen durch verschiedene, an unterschiedliche Netzwerkschnittstellen gebundene GerĂ€te organisiert. IP-Adressen.
  • EnthĂ€lt Änderungen, die zum Erstellen mit der Standard-Musl-C-Bibliothek erforderlich sind.
  • Verschiedene systemd-Komponenten, die Fortschrittsanzeigen darstellen (z. B. systemd-repart, systemd-sysupdate/updatectl und importctl), unterstĂŒtzen nun die Verwendung von ANSI-Sequenzen zur Animation der Fortschrittsanzeigen. Solche Sequenzen werden derzeit nur in unterstĂŒtzt. Windows Terminal (es wird erwartet, dass im Laufe der Zeit eine Ă€hnliche Funktion auf Terminalemulatoren ĂŒbertragen wird fĂŒr Linux).
  • Die Funktionen der systemd-sysupdate-Komponente wurden erweitert und dienen zum automatischen Erkennen, Herunterladen und Installieren von Updates mithilfe eines atomaren Mechanismus zum Ersetzen von Partitionen, Dateien oder Verzeichnissen (es werden zwei unabhĂ€ngige Partitionen/Dateien/Verzeichnisse verwendet, von denen eine die aktuelle Funktion enthĂ€lt). Ressource, und der andere installiert das nĂ€chste) Update, nach dem die Abschnitte/Dateien/Verzeichnisse ausgetauscht werden. In der Praxis wird systemd-sysupdate bereits im GNOME-Betriebssystem verwendet.

    ZusĂ€tzlich zum systemd-sysupdate-Prozess wurde ein gleichnamiger Dienst hinzugefĂŒgt, der es einem unprivilegierten Benutzer ermöglicht, D-Bus zur Verwaltung von Systemaktualisierungen zu verwenden. Zur Verwaltung des Dienstes ist außerdem ein neues Dienstprogramm updatectl enthalten. „--offline“-Flag zu systemd-sysupdate hinzugefĂŒgt, um das Herunterladen von Metadaten ĂŒber das Netzwerk zu deaktivieren und nur Versionen zu verwenden, die bereits auf das lokale System heruntergeladen wurden. UnterstĂŒtzung fĂŒr die Ausgabe im JSON-Format fĂŒr alle Befehle hinzugefĂŒgt.

  • FĂŒr Dienste wurde eine neue Eigenschaft „PrivatePIDs“ implementiert, mit der Sie den Start von Prozessen mit PID 1 (Init-Prozess) in einem separaten Prozess-Identifier-Raum (PID-Namespace) organisieren können. In der fĂŒr den gestarteten Prozess erstellten Umgebung sind nur Prozesse aus dem dafĂŒr erstellten Namespace sichtbar.
  • UnterstĂŒtzung fĂŒr Übereinstimmungen ohne BerĂŒcksichtigung der Groß- und Kleinschreibung bei udev-Regeln hinzugefĂŒgt (z. B. 'ATTR{foo}==i»abcd»'). Mit udev ist es möglich, unprivilegierten lokalen Benutzern Zugriff („uaccess“) auf das /dev/udmabuf-GerĂ€t zu gewĂ€hren, der fĂŒr die Arbeit mit IPMI-Kameras ĂŒber libcamera notwendig ist. udev erkennt verschiedene Hardware-Krypto-Wallets mit USB-Schnittstelle und setzt fĂŒr sie die Eigenschaft ID_HARDWARE_WALLET, die es Ihnen ermöglicht, den „uaccess“-Modus fĂŒr den Zugriff durch nichtprivilegierte Benutzer auf sie anzuwenden.
  • Der Datei /etc/os-release wurden neue Felder RELEASE_TYPE, EXPERIMENT und EXPERIMENT_URL hinzugefĂŒgt. „RELEASE_TYPE“ kann die Werte „experimental“, „development“, „stable“ und „lts“ annehmen, um stabile Versionen von Entwicklungs- und experimentellen Builds zu trennen. Die Parameter EXPERIMENT und EXPERIMENT_URL sollen das Wesentliche des experimentellen Builds erlĂ€utern.
  • Das Dienstprogramm run0, das als Ersatz fĂŒr das Programm sudo entwickelt wurde, hat die Option „--shell-prompt-prefix“ hinzugefĂŒgt, die die PrĂ€fixzeichenfolge fĂŒr die Befehls-Shell-Eingabeaufforderung angibt. StandardmĂ€ĂŸig wird das Emoji „🩾“ als PrĂ€fix angezeigt, um eine erhöhte Sitzung optisch hervorzuheben.
  • Um zu verhindern, dass versehentlich die falschen Dateien gelöscht werden, gilt in systemd-tmpfiles die Option „--purge“ jetzt nur fĂŒr Einstellungen in tmpfiles.d/, bei denen das Flag „$“ explizit gesetzt ist. Die Operation „--purge“ erfordert jetzt auch die Angabe mindestens einer Datei aus dem Verzeichnis tmpfiles.d/. FĂŒr Zeichenfolgen mit dem Typ „L“ wurde das Flag „?“ hinzugefĂŒgt. Bei Angabe wird ein symbolischer Link nur erstellt, wenn die Zieldatei vorhanden ist.
  • Im Service Manager und zugehörigen Dienstprogrammen wird der Prozessverfolgungscode weiterhin so konvertiert, dass PIDFD anstelle von PID verwendet wird. Ein PIDFD ist einem bestimmten Prozess zugeordnet und Ă€ndert sich nicht, wĂ€hrend eine PID einem anderen Prozess zugeordnet werden kann, nachdem der aktuelle Prozess, der dieser PID zugeordnet ist, beendet wird.
  • FĂŒr Dienste ist es nun möglich, im Parameter „RestartMode“ den Wert „debug“ anzugeben, bei dem der ausgefallene Dienst mit aktiviertem Debug-Modus neu gestartet wird (die Umgebungsvariable DEBUG_INVOCATION=1 ist gesetzt) ​​und der LogLevelMax-Wert vorĂŒbergehend auf Debug-Level angehoben.
  • Der PID 1-Handler hat die Möglichkeit, Regeln fĂŒr das IPE-LSM-Modul (Integrity Policy Enforcement) zu laden, die die IntegritĂ€tsrichtlinie fĂŒr das gesamte System definieren (welche VorgĂ€nge zulĂ€ssig sind und wie die AuthentizitĂ€t von Komponenten ĂŒberprĂŒft werden soll).
  • Den Unit-Dateien „.timer“ wurde die Option „DeferReactivation“ hinzugefĂŒgt, mit der Sie die nĂ€chste Timer-Aktivierung ĂŒberspringen können, wenn der Dienst seine AusfĂŒhrung seit der letzten Aktivierung noch nicht abgeschlossen hat.
  • Im Unit-Dateiparameter PrivateUsers ist es nun möglich, den Wert „identity“ anzugeben, um die Zuordnung von Benutzer-IDs beim Erstellen eines Benutzernamensraums zu ermöglichen.
  • UnterstĂŒtzung fĂŒr den Wert „disconnected“ zum Unit-Dateiparameter PrivateTmp hinzugefĂŒgt, der separate tmpfs-Instanzen fĂŒr die Verzeichnisse /tmp/ und /var/tmp/ verwendet.
  • Dem Unit-Dateiparameter ProtectControlGroups wurde UnterstĂŒtzung fĂŒr neue „private“ und „strenge“ Modi hinzugefĂŒgt. Wenn diese festgelegt sind, wird ein neuer cgroup-Namespace fĂŒr den Dienst erstellt und cgroupfs gemountet. Wenn die Option „strict“ gesetzt ist, wird cgroupfs im schreibgeschĂŒtzten Modus gemountet.
  • Die Parameter StateDirectory, RuntimeDirectory, CacheDirectory, LogsDirectory und ConfigurationDirectory bieten die Möglichkeit, das Flag „:ro“ zu verwenden, um den Zugriff auf die entsprechenden Verzeichnisse auf den schreibgeschĂŒtzten Modus zu beschrĂ€nken.
  • UnterstĂŒtzung fĂŒr den Wert „firmware“ zum Kernel-Befehlszeilenparameter „systemd.machine_id“ hinzugefĂŒgt, in dem die Systemkennung (Maschinen-ID) basierend auf der UUID von SMBIOS/DeviceTree berechnet wird.
  • UnterstĂŒtzung fĂŒr die in den letzten Kernel-Versionen eingefĂŒhrten Systemaufrufe mseal(), listmount() und statmount() hinzugefĂŒgt. Linux.
  • Die Dienstprogramme „resolvectl“, „timedatectl“ und „systemd-inhibit“ unterstĂŒtzen jetzt die interaktive Autorisierung mit Polkit.
  • Es wurde die Möglichkeit hinzugefĂŒgt, das Flag „--now“ im Befehl „reenable“ zum Dienstprogramm „systemctl“ zu verwenden.
  • Option „--json“ zum Dienstprogramm systemd-mount fĂŒr die Ausgabe im JSON-Format hinzugefĂŒgt (wenn sie beispielsweise zusammen mit „--list-devices“ angegeben wird, wird eine Liste von GerĂ€ten im JSON-Format ausgegeben).
  • Dem Dienstprogramm „localectl“ wurden die Optionen „-l“ und „--full“ hinzugefĂŒgt, um das Abschneiden langer Zeilen wĂ€hrend der Ausgabe zu deaktivieren.
  • In der Datei „sleep.conf“ wurde die Option „HibernateOnACPower“ hinzugefĂŒgt, mit der Sie den Wechsel in den Schlafmodus verzögern können, bis das GerĂ€t von der stationĂ€ren Stromquelle getrennt wird.
  • In systemd-sysusers wurde den „u“-Zeilen UnterstĂŒtzung fĂŒr den Modifikator „!“ hinzugefĂŒgt, mit dem Sie vollstĂ€ndig gesperrte Benutzerkonten erstellen können (zuvor wurde das Festlegen eines falschen Passworts zum Blockieren eines Benutzers verwendet, was beispielsweise dazu fĂŒhrte, dass fĂŒhrte nicht zur Blockierung bei der SchlĂŒsselauthentifizierung in SSH).
  • Systemd-coredump fĂŒgt eine Option „EnterNamespace“ hinzu, die den Zugriff auf den EinhĂ€ngepunktraum aller abgestĂŒrzten Prozesse ermöglicht, um deren Debugsymbole abzurufen. In der Praxis kann die Option nĂŒtzlich sein, um die RĂŒckverfolgung von Kerndateien von Anwendungen zu organisieren, die in isolierten Containern ausgefĂŒhrt werden.
  • systemd-logind umfasst die Verarbeitung der Kombination Strg-Alt-Umschalt-Esc, um das Signal org.freedesktop.login1.SecureAttentionKey an die Komponenten der Benutzerumgebung mit der Aufforderung zu senden, einen sicheren Anmeldedialog anzuzeigen. Die Einstellung „DesignatedMaintenanceTime“ wurde implementiert, um die Arbeit automatisch so zu planen, dass sie zu einem bestimmten Zeitpunkt abgeschlossen wird. Analog zur UnterstĂŒtzung fĂŒr DRM- und evdev-GerĂ€te wurde UnterstĂŒtzung fĂŒr die Konfiguration des Zugriffs fĂŒr nichtprivilegierte Benutzer auf Hidraw-GerĂ€te (Gamecontroller und Joysticks) hinzugefĂŒgt.
  • systemd-machined unterstĂŒtzt jetzt unprivilegierte Client-Logins. virtuelle Maschinen und Container. Der Zugriff auf systemd-basierte Funktionen erfolgt ĂŒber die Varlink-API sowie ĂŒber D-Bus.
  • Der Konfigurationsdatei networkd.conf wurde ein neuer Abschnitt „[IPv6AddressLabel]“ hinzugefĂŒgt, um Bezeichnungen und PrĂ€fixe fĂŒr IPv6-Adressen zu konfigurieren
  • Option „--stdin“ zum Befehl „networkctl edit“ hinzugefĂŒgt, um Dateiinhalte aus dem Standard-Stream abzurufen. UnterstĂŒtzung fĂŒr das Bearbeiten und Anzeigen von .netdev-Dateien durch Angabe einer Netzwerkschnittstelle fĂŒr die Befehle „networkctl edit“ und „networkctl cat“ hinzugefĂŒgt. Option „--no-ask-password“ hinzugefĂŒgt, um die interaktive Autorisierung zu deaktivieren.
  • Den Dienstprogrammen ukify, bootctl, systemd-keyutil, systemd-measure, systemd-repart und systemd-sbsign wurde die Option „--certificate-source“ hinzugefĂŒgt, um ein X.509-Zertifikat ĂŒber den OpenSSL-Anbieter zu laden, anstatt es direkt von einem zu laden Datei.
  • systemd-boot bietet die Möglichkeit, mit den LautstĂ€rketasten durch das Boot-MenĂŒ nach oben und unten zu navigieren, was auf GerĂ€ten wie Smartphones nĂŒtzlich sein kann. Dem Dienstprogramm bootctl wurde UnterstĂŒtzung fĂŒr die Installation der UEFI Secure Boot-Datenbank im ESL-Format (db/dbx/
) fĂŒr systemd-boot hinzugefĂŒgt.
  • Option „--list-invocation“ zu „journalctl“ hinzugefĂŒgt, um eine Liste von Einheitenaufrufen anzuzeigen, und Option „--invocation“ („-I“), um Protokolle anzuzeigen, die nur einem bestimmten Aufruf zugeordnet sind.
  • systemd-nspawn fĂŒgt UnterstĂŒtzung fĂŒr die unprivilegierte Verwendung von FUSE (Filesystem in Userspace) in Containern hinzu. Bei Verwendung der Option „--bind-user“ werden die fĂŒr den Zugriff per SSH benötigten SSH-SchlĂŒssel des Benutzers an den Container weitergeleitet.
  • libsystemd hat eine neue Programmierschnittstelle „sd-json“ hinzugefĂŒgt, die das JSON-Format verwendet, sowie eine Schnittstelle „sd-varlink“, die IPC Varlink verwendet.
  • Die empfohlene Basiskernelversion wurde auf Version 5.4 aus dem Jahr 2019 aktualisiert. NĂ€chstes Jahr planen sie, die UnterstĂŒtzung Ă€lterer Kernel einzustellen und die Version 5.4 als mindestens unterstĂŒtzte Basisversion zu markieren.
  • Die UnterstĂŒtzung fĂŒr cgroups v1 ist veraltet und standardmĂ€ĂŸig deaktiviert (um sie zu aktivieren, mĂŒssen Sie zusĂ€tzlich zur Aktivierung in den Systemd-Einstellungen SYSTEMD_CGROUP_ENABLE_LEGACY_FORCE=1 in der Kernel-Befehlszeile angeben). Die nĂ€chste Version von systemd 258 sieht vor, den cgroups v1-bezogenen Code vollstĂ€ndig zu entfernen. Systemd Version 258 soll außerdem die UnterstĂŒtzung fĂŒr System V-Dienstskripte entfernen.

Source: opennet.ru

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