Veröffentlichung des Systemmanagers systemd 244.

Nach drei Monaten Entwicklung wurde vorgestellt wurde der Systemmanager veröffentlicht systemd 244.

Wesentliche Änderungen:

  • Unterstützung des cpuset-Ressourcencontrollers basierend auf cgroups v2 hinzugefügt, der einen Mechanismus zur Bindung von Prozessen an bestimmte CPUs (Einstellung „AllowedCPUs“) und NUMA-Speicher-Knoten (Einstellung „AllowedMemoryNodes“) bereitstellt;
  • Unterstützung für das Laden von Einstellungen aus der EFI-Variablen SystemdOptions für die Systemd-Konfiguration hinzugefügt, ermöglicht es, das Verhalten von Systemd zu konfigurieren, wenn es problematisch ist, die Kernel-Befehlszeilenparameter zu ändern und die Konfiguration von der Festplatte zu spät gelesen wird (z. B. wenn Optionen im Zusammenhang mit der cgroup-Hierarchie konfiguriert werden müssen). Zum Setzen der Variable in EFI kann der Befehl ‘bootctl systemd-efi-options’ verwendet werden;
  • In die Einheiten wurde die Unterstützung zum Laden von Einstellungen aus den Verzeichnissen „{unit_type}.d/“ hinzugefügt, die an die Einheitstypen gebunden sind (z. B. „service.d/“), die verwendet werden können, um Einstellungen hinzuzufügen, die sofort für alle Dateien von diesem Typ gelten;
  • Für Serviceeinheiten wurde ein neuer Sandbox-Isolationsmodus ProtectKernelLogs hinzugefügt, der den Zugriff von Programmen auf den Log-Puffer des Kernels, der über den Systemaufruf syslog verfügbar ist, einschränkt (nicht zu verwechseln mit der gleichnamigen API, die in libc bereitgestellt wird). Bei Aktivierung des Modus wird der Zugriff der Anwendung auf /proc/kmsg, /dev/kmsg und CAP_SYSLOG blockiert;
  • Für Einheiten wurde die Einstellung RestartKillSignal eingeführt, die es ermöglicht, die Signalnummer zu überschreiben, die zum Beenden eines Prozesses während der Durchführung von Aufgaben-Neustarts verwendet wird (das Verhalten des Prozessstopps in der Vorbereitungsphase für einen Neustart kann verändert werden);
  • Der Befehl „systemctl clean“ wurde angepasst, um mit Socket-, Mounteinheiten und Swap-Einheiten (socket, mount, swap) angewendet zu werden;
  • In der frühen Phase des Bootvorgangs sind die Einschränkungen für die Ausgabeleistung der Kernelmeldungen über den Aufruf von printk deaktiviert. Dies ermöglicht, umfassendere Protokolle über den Bootverlauf zu sammeln, während der Speicher für Protokolle noch nicht verbunden ist (das Protokoll wird im ringbuffer des Kernels gespeichert). Die Konfiguration der Grenzwerte für printk über die Kernel-Befehlszeile hat eine höhere Priorität und kann das Verhalten von systemd überschreiben. Programme von systemd, die direkt Protokolle nach /dev/kmsg ausgeben (was nur in der frühen Bootphase geschieht), verwenden separate interne Einschränkungen, um eine Überfüllung des Puffers zu verhindern.
  • Der Befehl 'stop —job-mode=triggering' wurde zur systemctl-Utility hinzugefügt, um sowohl die im Befehlszeilenparameter angegebene Einheit als auch alle Einheiten, die sie aufrufen können, zu stoppen;
  • Die Zustandsinformationen der Einheit enthalten jetzt Angaben zu aufrufenden und aufgerufenen Einheiten;
  • Es besteht die Möglichkeit, die Einstellung 'RuntimeMaxSec' in Scope-Einheiten zu verwenden (vorher wurde sie nur in Service-Einheiten angewendet). Zum Beispiel kann 'RuntimeMaxSec' jetzt verwendet werden, um die Zeit der PAM-Sitzungen durch die Erstellung einer Scope-Einheit zu begrenzen.
    für das Benutzerkonto. Die Zeitbeschränkung kann auch über die Option systemd.runtime_max_sec in den Parametern des PAM-Moduls pam_systemd festgelegt werden;
  • Eine neue Gruppe von Systemaufrufen „@pkey“ wurde hinzugefügt, die das Hinzufügen von Systemaufrufen zur Whitelist bei der Einschränkung von Containern und Diensten erleichtert und die mit dem Speicherschutz verbunden sind;
  • In systemd-tmpfiles wurde die Flagge „w+“ für den Modus zum Anhängen von Dateien hinzugefügt;
  • Der Output von systemd-analyze enthält jetzt Informationen über die Übereinstimmung der Kernel-Speicherkonfiguration mit den systemd-Einstellungen (z. B. wenn ein externes Programm die Kernel-Parameter geändert hat);
  • In systemd-analyze wurde die Option „—base-time“ hinzugefügt, bei deren Angabe die Kalenderdaten relativ zu der in dieser Option angegebenen Zeit und nicht zur aktuellen Systemzeit berechnet werden;
  • In „journalctl —update-catalog“ wurde sichergestellt, dass die Elemente im Output in einer konsistenten Reihenfolge erscheinen (nützlich für die Organisation wiederholbarer Builds);
  • Es wurde die Möglichkeit hinzugefügt, einen Standardwert für die Einstellung „WatchdogSec“ festzulegen, die in den Systemd-Diensten verwendet wird. Zum Zeitpunkt der Kompilierung kann der Basiswert über die Option „-Dservice-watchdog“ definiert werden (wenn ein leerer Wert angegeben wird, wird der Watchdog deaktiviert);
  • Eine Build-Option „-Duser-path“ wurde hinzugefügt, um den Wert von $PATH zu überschreiben;
  • Im Dienstprogramm systemd-id128 wurde die Option „-u“ („—uuid“) hinzugefügt, um 128-Bit-Identifikatoren im UUID-Format (kanonische Darstellung von UUIDs) auszugeben;
  • Für den Build wird nun libcryptsetup in mindestens Version 2.0.1 benötigt.

Änderungen im Zusammenhang mit der Netzwerkeinrichtung:

  • In systemd-networkd wurde die Unterstützung für die dynamische Neukonfiguration von Links hinzugefügt. Dafür wurden in networkctl die Befehle „reload“ und „reconfigure DEVICE…“ hinzugefügt, um die Einstellungen neu zu laden und die Geräte neu zu konfigurieren;
  • In systemd-networkd wurde die Erstellung von Standardrouten für lokale IPv4-Links mit Intranet-Adressen 169.254.0.0/16 eingestellt (Link-local). Frühere automatische Standardrouten für solche Links führten in einigen Fällen zu unvorhergesehenem Verhalten und Routingproblemen. Um das alte Verhalten wiederherzustellen, sollte die Einstellung „DefaultRouteOnDevice=yes“ verwendet werden. Ebenso wurde die Zuweisung lokaler IPv6-Adressen eingestellt, wenn das lokale IPv6-Routing für den Link nicht aktiviert ist;
  • In systemd-networkd wird beim Verbinden mit drahtlosen Netzwerken im Ad-hoc-Modus standardmäßig eine Konfiguration mit link-lokaler Adressierung angewendet;
  • Es wurden die Parameter RxBufferSize und TxBufferSize zur Anpassung der Größe der Empfangs- und Versandpuffer des Netzwerkinterfaces hinzugefügt;
  • In systemd-networkd wurde die Ankündigung zusätzlicher IPv6-Routen implementiert, gesteuert durch die Optionen Route und LifetimeSec im Abschnitt „[IPv6RoutePrefix]“;
  • In systemd-networkd wurde die Möglichkeit hinzugefügt, „Next Hop“-Routen mit den Optionen „Gateway“ und „Id“ im Abschnitt „[NextHop]“ zu konfigurieren;
  • In systemd-networkd und networkctl für DHCP wird das Aktualisieren von IP-Adressenbindungen (leases) zur Laufzeit ermöglicht, umgesetzt durch den Befehl ‘networkctl renew’;
  • systemd-networkd ermöglicht den Rücksetzvorgang der DHCP-Konfiguration beim Neustart (zur Speicherung der Einstellungen sollte der Parameter KeepConfiguration verwendet werden). Der Standardwert der Einstellung SendRelease wurde auf «true» geändert;
  • Der DHCPv4-Client unterstützt jetzt den Empfang des Option OPTIONS_INFORMATION_REFRESH_TIME, das vom Server übermittelt wird. Um spezifische Optionen beim Server anzufordern, wurde der Parameter «RequestOptions» vorgeschlagen, und zum Senden von Optionen an den Server — «SendOption». Zur Konfiguration des IP-Diensttyps des DHCP-Clients wurde der Parameter «IPServiceType» hinzugefügt;
  • Für die Substitution des DHCPv4-Servers mit einer Liste von SIP-Servern (Session Initiation Protocol) wurden die Parameter «EmitSIP» und «SIP» hinzugefügt. Auf der Client-Seite kann der Empfang von SIP-Parametern vom Server durch die Einstellung «UseSIP=yes» aktiviert werden;
  • Im DHCPv6-Client wurde der Parameter «PrefixDelegationHint» hinzugefügt, um einen Adresspräfix anzufordern;
  • In den .network-Dateien wird die Unterstützung für das Mapping von drahtlosen Netzwerken nach SSID und BSSID gewährleistet, beispielsweise zur Bindung an den Namen des Zugangspunkts und die MAC-Adresse. Die Werte SSID und BSSID werden in der Ausgabe von networkctl für drahtlose Schnittstellen angezeigt. Darüber hinaus wurde die Möglichkeit zur Zuordnung nach Art des drahtlosen Netzwerks (Parameter WLANInterfaceType) hinzugefügt;
  • In systemd-networkd wurde die Möglichkeit hinzugefügt, Warteschlangen-Disziplinen zur Steuerung des Datenverkehrs mithilfe neuer Parameter wie Parent,
    NetworkEmulatorDelaySec, NetworkEmulatorDelayJitterSec,
    NetworkEmulatorPacketLimit und NetworkEmulatorLossRate,
    NetworkEmulatorDuplicateRate im Abschnitt «[TrafficControlQueueingDiscipline]» zu konfigurieren;
  • In systemd-resolved wurde die Überprüfung von IP-Adressen in Zertifikaten bei der Kompilierung mit GnuTLS implementiert.

Änderungen im Zusammenhang mit udev:

  • In systemd-udevd wurde das 30-sekündige Timeout für die erzwungene Beendigung von hängenden Handlern entfernt. Systemd-udevd wartet jetzt auf den Abschluss der Handler, für die 30 Sekunden nicht ausreichten, um die Operationen in großen Installationen ordnungsgemäß abzuschließen (zum Beispiel konnte das Timeout die Initialisierung des Treibers während des Wechsels eines gemounteten Verzeichnisses für das Root-Dateisystem unterbrechen). Bei Verwendung von systemd kann das Timeout, das systemd-udevd vor dem Verlassen wartet, durch die Einstellung TimeoutStopSec in systemd-udevd.service festgelegt werden. Bei einem Start ohne systemd wird das Timeout durch den Parameter udev.event_timeout geregelt;
  • Für udev wurde das Programm fido_id hinzugefügt, das FIDO CTAP1-Tokens identifiziert.
    («U2F»)/CTAP2 basierend auf den Daten über ihre vorherige Nutzung und stellt die erforderlichen Umgebungsvariablen bereit (das Programm ermöglicht es, ohne externe Weißlisten aller bekannten Tokens auszukommen, die zuvor verwendet wurden);
  • Die automatische Generierung von udev-Regeln für autosuspend für Geräte aus einer aus Chromium OS importierten Weißliste wurde implementiert (diese Änderung erweitert die Anwendung von Energiesparmodi auf zusätzliche Geräte);
  • Eine neue Einstellung in udev «CONST{key}=value» wurde hinzugefügt, die es ermöglicht, Wertzuordnungen von Systemkonstanten direkt ohne das Starten separater Handler zur Überprüfung auszuführen. Derzeit werden nur die Schlüssel «arch» und «virt» unterstützt;
  • Das Öffnen von CDROM im nicht-exklusiven Modus wurde bei der Durchführung von Anfragen zum unterstützten Modus sichergestellt (diese Änderung löst Zugangsprobleme für Programme zu CDROM und verringert das Risiko von Unterbrechungen für Programme, die keine exklusiven Zugriffsmodi verwenden).

Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster