systemd sistēmas pārvaldnieka laidiens 242

После двух месяцев разработки представлен релиз системного менеджера systemd 242. Из новшеств можно отметить поддержку туннелей L2TP, возможность управления поведением systemd-logind при перезапуске через переменные окружения, поддержку расширенных загрузочных разделов XBOOTLDR для монтирования /boot, возможность загрузки с корневым разделом в overlayfs, а также большое число новых настроек для разных типов юнитов.

Galvenās izmaiņas:

  • systemd-networkd nodrošina atbalstu L2TP tuneļiem;
  • sd-boot un bootctl atbalsta XBOOTLDR (Extended Boot Loader) nodalījumus, kas ir uzstādīti /boot, papildus ESP nodalījumiem, kas ir uzstādīti /efi vai /boot/efi. Kodolus, iestatījumus, initrd un EFI attēlus tagad var ielādēt gan no ESP, gan XBOOTLDR nodalījumiem. Šīs izmaiņas ļauj izmantot sd-boot bootloader konservatīvākos scenārijos, kad pats sāknēšanas ielādētājs tiek ievietots ESP, un sāknēšanas kodoli un ar tiem saistītie metadati tiek pārvietoti uz atsevišķu sadaļu;
  • Pievienota iespēja palaist ar kodolam nodoto opciju "systemd.volatile=overlay", kas ļauj ievietot saknes nodalījumu pārklājumos un organizēt darbu virs saknes direktorija tikai lasāma attēla ar izmaiņām, kas ierakstītas atsevišķu direktoriju tmpfs (šīs konfigurācijas izmaiņas tiek zaudētas pēc restartēšanas) . Pēc analoģijas sistēmai systemd-nspawn ir pievienota opcija "--volatile=overlay", lai konteineros izmantotu līdzīgu funkcionalitāti;
  • Programmai systemd-nspawn ir pievienota opcija "--oci-bundle", lai atļautu izmantot izpildlaika komplektus, lai nodrošinātu izolētu konteineru darbību, kas atbilst Open Container Initiative (OCI) specifikācijai. Komandrindā un nspawn vienībās tiek piedāvāts atbalsts dažādām opcijām, kas aprakstītas OCI specifikācijā, piemēram, iestatījumus "--nepieejams" un "Nepieejams" var izmantot, lai izslēgtu failu sistēmas daļas, un "- -Console" opcijas ir pievienotas, lai konfigurētu standarta izvades plūsmas un "-pipe";
  • Pievienota iespēja kontrolēt systemd-login uzvedību, izmantojot vides mainīgos: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
    $SYSTEMD_REBOOT_ TO_BOOT_LOADER_MENU un
    $SYSTEMD_REBOOT_TO_BOOT_LOADER_ENTRY. Izmantojot šos mainīgos, varat savienot savus atsāknēšanas procesa apdarinātājus (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu un
    /run/systemd/reboot-to-boot-loader-entry) vai atspējot tos pavisam (ja iestatīts uz false);

  • Pievienotas opcijas "--boot-load-menu=" komandai "systemctl reboot" un
    "--boot-loader-entry=", ļaujot atlasīt konkrētu sāknēšanas izvēlnes vienumu vai sāknēšanas režīmu pēc atkārtotas palaišanas;

  • Pievienota jauna smilškastes izolācijas komanda "RestrictSUIDSGID=", kas izmanto seccomp, lai novērstu failu izveidi ar SUID/SGID karodziņiem;
  • Ieviesti noklusējuma ierobežojumi "NoNewPrivileges" un "RestrictSUIDSGID" pakalpojumos ar iespējotu dinamisko lietotāja ID ģenerēšanu ("DynamicUser");
  • Noklusējuma iestatījums MACAddressPolicy=persistent .link failos ir mainīts, lai aptvertu vairāk ierīču. Tīkla tiltu, tuneļu (tun, tap) un apkopoto saišu (bond) saskarnes sevi identificē tikai pēc tīkla interfeisa nosaukuma, tāpēc šis nosaukums tagad tiek izmantots par pamatu MAC un IPv4 adrešu saistīšanai. Turklāt ir pievienots iestatījums "MACAddressPolicy=random", ko var izmantot, lai nejaušā secībā saistītu MAC un IPv4 adreses ar ierīcēm;
  • ".device" vienību faili, kas ģenerēti, izmantojot systemd-fstab-generator, vairs neietver atbilstošās ".mount" vienības kā atkarības sadaļā "Wants=". Vienkārši pievienojot ierīci, vairs netiek automātiski palaista montāžas vienība, taču šādas vienības joprojām var palaist citu iemeslu dēļ, piemēram, kā daļu no local-fs.target vai kā atkarību no citām vienībām, kas ir atkarīgas no local-fs.target;
  • Masku atbalsts ("*" utt.) ir pievienots komandām "networkctl list/status/lldp", lai filtrētu noteiktas tīkla saskarņu grupas pēc to nosaukuma daļas;
  • Vides mainīgais $PIDFILE tagad ir iestatīts, izmantojot absolūto ceļu, kas konfigurēts pakalpojumos, izmantojot 'PIDFile=;
  • Ir pievienoti publiskie Cloudflare serveri (1.1.1.1) rezerves DNS serveru skaitam, ko izmanto, ja primārais DNS nav skaidri definēts. Lai ignorētu rezerves DNS serveru sarakstu, varat izmantot opciju "-Ddns-servers=";
  • Kad tiek atklāts USB ierīces kontrolleris, automātiski tiek palaists jauns usb-gadget.target apstrādātājs (ja sistēma darbojas USB perifērijas ierīcē);
  • Vienības failiem tiek ieviests iestatījums "CPUQuotaPeriodSec=", kas nosaka laika periodu, pret kuru tiek mērīta CPU laika kvota, kas iestatīts, izmantojot iestatījumu "CPUQuota=";
  • Vienības failiem ir ieviests iestatījums "ProtectHostname=", kas aizliedz pakalpojumiem mainīt informāciju par resursdatora nosaukumu, pat ja tiem ir atbilstošas ​​atļaujas;
  • Vienības failiem ir ieviests iestatījums "NetworkNamespacePath=", kas ļauj saistīt nosaukumvietu ar pakalpojumiem vai ligzdas vienībām, norādot ceļu uz nosaukumvietas failu failā /proc pseido-FS;
  • Pievienota iespēja atspējot vides mainīgo aizstāšanu procesiem, kas palaisti, izmantojot iestatījumu "ExecStart=", pirms starta komandas pievienojot rakstzīmi ":";
  • Taimeriem (.taimera vienībām) jauni karodziņi "OnClockChange=" un
    "OnTimezoneChange=", ar kuru jūs varat kontrolēt vienības zvanu, mainot sistēmas laiku vai laika joslu;

  • Pievienoti jauni uzstādījumi "ConditionMemory=" un "ConditionCPUs=", kas nosaka iekārtas izsaukšanas nosacījumus atkarībā no atmiņas lieluma un CPU kodolu skaita (piemēram, resursietilpīgu servisu var palaist tikai tad, ja nepieciešamais apjoms ir pieejama RAM);
  • Ir pievienota jauna time-set.target vienība, kas pieņem lokāli iestatīto sistēmas laiku, neizmantojot saskaņošanu ar ārējiem precīza laika serveriem, izmantojot vienību time-sync.target. Jauno vienību var izmantot pakalpojumi, kuriem nepieciešama nesinhronizēta lokālā pulksteņa precizitāte;
  • Pievienota opcija "--show-transaction" "systemctl start" un līdzīgas komandas, lai parādītu kopsavilkumu par visiem darbiem, kas pievienoti rindai pieprasītās darbības dēļ;
  • Systemd-networkd ir ieviesis definīciju jaunam stāvoklim “paverdzināts”, ko izmanto “degradēts” vai “pārvadātājs” vietā tīkla saskarnēm, kas ir daļa no apkopotām saitēm vai tīkla tiltiem. Primārajām saskarnēm, ja rodas problēmas ar kādu no saliktajām saitēm, ir pievienots statuss “degraded-carrier”;
  • .tīkla vienībām pievienota opcija "IgnoreCarrierLoss=", lai saglabātu tīkla iestatījumus savienojuma kļūmes gadījumā;
  • Izmantojot iestatījumu “RequiredForOnline=” .tīkla vienībās, tagad varat iestatīt minimālo pieļaujamo saites stāvokli, kas nepieciešams, lai tīkla interfeisu pārsūtītu uz “online” un aktivizētu apdarinātāju systemd-networkd-wait-online;
  • Pievienota opcija "--any" sistēmai systemd-networkd-wait-online, lai gaidītu, līdz būs gatava kāda no norādītajām tīkla saskarnēm, nevis visas, un opcija "--operational-state=", lai definētu saites stāvokli, kas norāda, ka tas ir gatavs;
  • Pievienoti iestatījumi "UseAutonomousPrefix=" un "UseOnLinkPrefix=" .tīkla vienībām, ko var izmantot, lai ignorētu prefiksus, saņemot
    paziņojums no IPv6 maršrutētāja (RA, Router Advertisement);

  • Tīkla vienībām pievienoti iestatījumi “MulticastFlood=”, “NeighborSuppression=” un “Learning=”, lai mainītu tīkla tilta darbības parametrus, kā arī iestatījums “TripleSampling=”, lai mainītu virtuālo CAN saskarņu TRIPLE-SAMPLING režīmu;
  • .netdev vienībām pievienoti “PrivateKeyFile=” un “PresharedKeyFile=” iestatījumi, ar kuriem var norādīt privātās un koplietotās (PSK) atslēgas WireGuard VPN saskarnēm;
  • Pievienotas pats-cpu-crypt un submit-from-crypt-cpus opcijas /etc/crypttab, lai kontrolētu plānotāja uzvedību, migrējot ar šifrēšanu saistītus darbus starp CPU kodoliem;
  • systemd-tmpfiles nodrošina bloķēšanas faila apstrādi pirms darbību veikšanas direktorijos ar pagaidu failiem, kas ļauj atspējot novecojušo failu tīrīšanas darbu noteiktu darbību laikā (piemēram, izpakojot tar arhīvu mapē / tmp, ļoti vecs var atvērt failus, kurus nevar izdzēst pirms darbības beigām ar tiem);
  • Komanda “systemd-analyze cat-config” nodrošina iespēju analizēt konfigurāciju, kas sadalīta vairākos failos, piemēram, lietotāja un sistēmas sākotnējos iestatījumus, tmpfiles.d un sysusers.d saturu, udev noteikumus utt.
  • Pievienota opcija "--cursor-file=" "journalctl", lai norādītu failu ielādei un saglabātu kursora pozīciju;
  • Pievienota ACRN hipervizora un WSL apakšsistēmas (Windows apakšsistēmas Linux) definīcija systemd-detect-virt turpmākai atzarošanai, izmantojot nosacījumu operatoru "ConditionVirtualization";
  • Pārtraukta simbolisku saišu veidošana mapē /etc uz systemd-networkd.service, systemd-networkd.socket, systemd-networkd.socket,
    systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
    systemd-networkd-wait-online.service un systemd-timesyncd.service. Lai izveidotu šos failus, jums tagad ir jāpalaiž komanda “systemctl preset-all”.

Avots: opennet.ru

Pievieno komentāru