Na drie maanden ontwikkeling uitgave van systeembeheerder .
Belangrijkste wijzigingen:
- Ondersteuning toegevoegd voor de cpuset hulpcontroller op basis van cgroups v2, die een mechanisme biedt voor het toewijzen van processen aan specifieke CPU's (instelling 'AllowedCPUs') en NUMA-geheugenknopen (instelling 'AllowedMemoryNodes');
- Ondersteuning toegevoegd voor het laden van instellingen uit de EFI-variabele SystemdOptions voor de configuratie van systemd, wat het mogelijk maakt om het gedrag van systemd aan te passen in situaties waar het moeilijk is om de kernelopdrachtregels aan te passen, en de configuratie vanaf de schijf te laat wordt gelezen (bijvoorbeeld wanneer opties met betrekking tot de cgroup-hiërarchie moeten worden ingesteld). Voor het instellen van de variabele in EFI kan het commando 'bootctl systemd-efi-options' worden gebruikt;
- In units is ondersteuning toegevoegd voor het laden van instellingen uit de mappen '{unit_type}.d/', gekoppeld aan unittypen (bijvoorbeeld 'service.d/'), die kunnen worden gebruikt om instellingen toe te voegen die voor alle bestanden van dat type gelden;
- Voor service-units is een nieuwe sandbox-isolatiemodus ProtectKernelLogs toegevoegd, waarmee de toegang van een programma tot de kernel-logbuffer, toegankelijk via de systeemaanroep syslog, kan worden verboden (niet te verwarren met de overeenkomstige API die door libc wordt geleverd). Bij activatie van deze modus wordt de toegang van de applicatie tot /proc/kmsg, /dev/kmsg en CAP_SYSLOG geblokkeerd;
- Voor units is de instelling RestartKillSignal geïntroduceerd, waarmee het signaalnummer kan worden overschreven dat wordt gebruikt om een proces te beëindigen tijdens de herstart van taken (de gedrag van het stoppen van het proces kan worden gewijzigd in de voorbereidende fase van de herstart);
- Het commando 'systemctl clean' is aangepast voor gebruik met socket-, mount- en swap-units (socket, mount, swap);
- In een vroeg stadium van het opstarten zijn de beperkingen op de intensiteit van de berichten die door de kernel via de printk-oproep worden weergegeven uitgeschakeld, waardoor meer volledige logs van de opstart worden verzameld op een moment waarop de opslag voor logs nog niet is aangesloten (de logs worden verzameld in de ringbuffer van de kernel). Instellingen voor limieten voor printk vanuit de kernelopdrachtregel hebben een hogere prioriteit en kunnen het gedrag van systemd overschrijven. Systemd-programma's die rechtstreeks logs naar /dev/kmsg schrijven (dit gebeurt alleen in een vroeg opstartstadium), gebruiken afzonderlijke interne limieten ter bescherming tegen het vol raken van de buffer;
- Aan de utility systemctl is het commando 'stop --job-mode=triggering' toegevoegd, waarmee zowel de in de opdrachtregel opgegeven unit als alle units die deze kunnen aanroepen, kunnen worden gestopt;
- De statusinformatie van de eenheid omvat nu gegevens over de aanroepende en aangeroepen eenheden;
- Er is nu ondersteuning voor de instelling 'RuntimeMaxSec' in scope-eenheden (voorheen alleen toegepast in service-eenheden). Bijvoorbeeld, 'RuntimeMaxSec' kan nu worden gebruikt om de duur van PAM-sessies te beperken via het creëren van een scope-eenheid
voor het gebruikersaccount. De tijdslimiet kan ook worden ingesteld via de optie systemd.runtime_max_sec in de parameters van de PAM-module pam_systemd; - Er is een nieuwe groep systeemaanroepen '@pkey' toegevoegd, die het eenvoudiger maakt om systeemaanroepen die verband houden met geheugenbescherming op te nemen in de whitelist bij het beperken van containers en services;
- In systemd-tmpfiles is de vlag 'w+' toegevoegd voor het append-modus bij bestanden;
- De output van systemd-analyze bevat nu informatie over de overeenkomst tussen de configuratie van de kernelgeheugen en de instellingen van systemd (bijvoorbeeld als een extern programma de kernelparameters heeft gewijzigd);
- In systemd-analyze is de optie '--base-time' toegevoegd, die kalendergegevens berekent ten opzichte van de tijd die in deze optie is opgegeven, in plaats van ten opzichte van de huidige systeemtijd;
- In 'journalctl --update-catalog' is de consistentie van de volgorde van elementen in de output gewaarborgd (handig voor het organiseren van herhaalbare builds);
- Er is een mogelijkheid toegevoegd om een standaardwaarde in te stellen voor de instelling 'WatchdogSec', die wordt gebruikt in systemd-services. Tijdens de compilatiefase kan de basiswaarde worden gedefinieerd via de optie '-Dservice-watchdog' (als er een lege waarde is opgegeven, wordt de watchdog uitgeschakeld);
- Er is een compilatieoptie '-Duser-path' toegevoegd om de waarde van $PATH te overschrijven;
- In de tool systemd-id128 is de optie '-u' ('--uuid') toegevoegd voor het afdrukken van 128-bits identificaties in UUID (de canonieke weergave van UUID);
- Voor de bouw is nu libcryptsetup vereist van minimaal versie 2.0.1.
Wijzigingen met betrekking tot netwerkinstellingen:
- In systemd-networkd is ondersteuning toegevoegd voor het on-the-fly opnieuw configureren van links, waarvoor in networkctl de commando's 'reload' en 'reconfigure DEVICE...' zijn toegevoegd om instellingen opnieuw te laden en apparaten opnieuw te configureren;
- In systemd-networkd is de creatie van standaardroutes voor lokale links IPv4 met intranet-adressen 169.254.0.0/16 gestopt (). Het automatisch aanmaken van standaardroutes voor dergelijke links leidde in het verleden tot onvoorspelbaar gedrag en routeringsproblemen in sommige gevallen. Om het oude gedrag te herstellen, moet u de instelling «DefaultRouteOnDevice=yes» gebruiken. Evenzo is de toewijzing van lokale IPv6-adressen stopgezet als lokale IPv6-routering voor de link niet is ingeschakeld;
- In systemd-networkd is bij het verbinden met draadloze netwerken in ad-hoc modus standaard een configuratie met link-locale adressering toegepast;
- De parameters RxBufferSize en TxBufferSize zijn toegevoegd voor het instellen van de grootte van de ontvangende en verzendende buffers van de netwerkinterface;
- In systemd-networkd is de mogelijkheid om extra IPv6-routes aan te geven gerealiseerd, geregeld via de opties Route en LifetimeSec in de sectie «[IPv6RoutePrefix]»;
- In systemd-networkd is de mogelijkheid toegevoegd om «next hop»-routes in te stellen met de opties «Gateway» en «Id» in de sectie «[NextHop]»;
- In systemd-networkd en networkctl wordt voor DHCP de IP-adresbindingen (leases) live bijgewerkt, gerealiseerd met de opdracht ‘networkctl renew’;
- systemd-networkd reset de DHCP-configuratie bij herstart (om de instellingen te behouden, moet de parameter KeepConfiguration worden gebruikt). De waarde van de instelling SendRelease is standaard gewijzigd in «true»;
- In de DHCPv4-client is het gebruik van de optie OPTION_INFORMATION_REFRESH_TIME, die door de server is doorgegeven, mogelijk gemaakt. Een parameter «RequestOptions» is voorgesteld voor het opvragen van specifieke opties van de server, en «SendOption» voor het verzenden van opties naar de server. Voor het instellen van het type IP-service is de parameter «IPServiceType» toegevoegd aan de DHCP-client;
- Voor de substitutie van een lijst van SIP-servers (Session Initiation Protocol) door de DHCPv4-server zijn de parameters «EmitSIP» en «SIP» toegevoegd. Aan de clientzijde kan het ontvangen van SIP-parameters van de server worden ingeschakeld met de instelling «UseSIP=yes»;
- In de DHCPv6-client is de parameter «PrefixDelegationHint» toegevoegd voor het aanvragen van een adresprefix;
- In .network-bestanden is ondersteuning toegevoegd voor het koppelen van draadloze netwerken op basis van SSID en BSSID, bijvoorbeeld om te koppelen aan de naam van het toegangspunt en het MAC-adres. De waarden voor SSID en BSSID worden weergegeven in de uitvoer van networkctl voor draadloze interfaces. Daarnaast is de mogelijkheid om te matchen op het type draadloos netwerk (parameter WLANInterfaceType) toegevoegd;
- In systemd-networkd is de mogelijkheid toegevoegd om wachtrijen te organiseren voor verkeersbeheer met nieuwe parameters Parent,
NetworkEmulatorDelaySec, NetworkEmulatorDelayJitterSec,
NetworkEmulatorPacketLimit en NetworkEmulatorLossRate,
NetworkEmulatorDuplicateRate in de sectie «[TrafficControlQueueingDiscipline]»; - In systemd-resolved is IP-adres controle in certificaten mogelijk gemaakt bij compilatie met GnuTLS.
Veranderingen met betrekking tot udev:
- In systemd-udevd is de 30-seconden timeout voor geforceerde beëindiging van vastgelopen handlers verwijderd. Systemd-udevd wacht nu tot handlers zijn voltooid, waarvoor 30 seconden niet voldoende was voor een normale beëindiging van operaties in grote installaties (bijvoorbeeld, de timeout kon de initiatie van een driver onderbreken tijdens het wisselen van de gemonteerde partitie voor het root bestandssysteem). Wanneer systemd wordt gebruikt, kan de timeout die systemd-udevd zal wachten voordat het verlaat, worden opgegeven via de instelling TimeoutStopSec in systemd-udevd.service. Bij uitvoering zonder systemd wordt de timeout geregeld door de parameter udev.event_timeout;
- Voor udev is het programma fido_id toegevoegd, dat FIDO CTAP1 «U2F»/CTAP2 tokens identificeert op basis van gegevens over hun eerdere gebruik en de benodigde omgevingsvariabelen weergeeft (het programma maakt het mogelijk om zonder externe witte lijsten van alle bekende tokens die eerder zijn gebruikt, toe te komen);
Het automatische genereren van udev-regels voor autosuspend van apparaten uit de witte lijst, geïmporteerd uit Chromium OS, is gerealiseerd (de wijziging breidt het gebruik van energiebesparende modi voor extra apparaten uit); - In udev is een nieuwe instelling «CONST{key}=value» toegevoegd, die directe overeenkomsten van waarden van systeemconstanten mogelijk maakt zonder aparte handlers uit te voeren voor verificatie. Momenteel worden alleen de sleutels «arch» en «virt» ondersteund;
- CDROM openen in niet-exclusieve modus is mogelijk gemaakt bij het uitvoeren van een aanvraag voor ondersteunde modi (de wijziging verhelpt toegangproblemen van programma's tot de CDROM en vermindert het risico op onderbrekingen van schrijfprogramma's die geen exclusieve toegang mode gebruiken).
- 🥇Release van systeembeheerder systemd 244 | ProHoster
Bron: opennet.ru
