Lansarea managerului de sistem systemd 255

După patru luni de dezvoltare, a fost lansată versiunea managerului de sistem systemd 255. Printre cele mai importante îmbunătățiri se numără: suport pentru exportul unităților prin NVMe-TCP, componenta systemd-bsod pentru afișarea pe ecran complet a mesajelor de eroare, utilitarul systemd-vmspawn pentru lansarea mașinilor virtuale, utilitarul varlinkctl pentru gestionarea serviciilor Varlink, utilitarul systemd-pcrlock pentru analiza registrelor TPM2 PCR și generarea regulilor de acces, modul de autentificare pam_systemd_loadkey.so.

Principalele schimbări din noua lansare:

  • A fost adăugată componenta „systemd-storagetm”, care face posibil exportul automat al tuturor dispozitivelor de bloc locale prin intermediul driverului NVMe-TCP (NVMe over TCP), permițând accesul la unitățile NVMe prin rețea (NVM Express over Fabrics), folosind protocolul TCP. Accesul în mod NVMe over TCP este gestionat de noul unit „storage-target-mode.target”, care poate fi activat în etapa de boot, specificând în linia de comandă a nucleului „rd.systemd.unit=storage-target-mode.target”, de exemplu, atunci când este necesar accesul la unitate în scopuri de diagnosticare.
  • A fost adăugată componenta „systemd-bsod” cu implementarea unui echivalent al „ecranului albastru al morții”, care permite în timpul bootării afișarea mesajelor despre erori critice (LOG_EMERG) sub formă de notificare pe ecran complet.
  • A fost adăugat utilitarul „systemd-vmspawn”, care reprezintă un analog al utilitarului systemd-nspawn pentru lansarea imaginii sistemului de operare într-o mașină virtuală (utilitarul systemd-nspawn este destinat pentru lansarea containerelor, iar systemd-vmspawn oferă un interfață similară pentru mașini virtuale). În prezent, pentru a lansa mașinile virtuale este disponibil doar backend-ul bazat pe QEMU.
  • A fost adăugată utilitarul „varlinkctl” pentru apelarea și introspecția serviciilor care utilizează protocolul Varlink.
  • A fost adăugat utilitarul „systemd-pcrlock” pentru analizarea și prezicerea stării registrelor TPM2 PCR (Platform Configuration Register) și pentru crearea regulilor de acces stocate în indicele TPM2 NV, care permit accesul la obiectele TPM2, cum ar fi cheile de criptare a discului, doar din componente verificate prin semnătură digitală, lansate în timpul etapei de boot verificat. Ca date de intrare pentru analiză poate fi utilizat rezultatul cererii de stare PCR în TPM2, emis de firmware-ul UEFI al jurnalului evenimentelor din încărcarea curentă (\sys\kernel\security\tpm0\binary_bios_measurements) sau jurnalul TPM2 salvat local (\run\log\systemd\tpm2-measure.log). Suportul pentru regulile de acces stocate a fost adăugat în systemd-cryptsetup, systemd-cryptenroll și systemd-repart.
  • A fost adăugat modul PAM pam_systemd_loadkey.so, destinat extragerii automatizate din depozitul de chei din nucleu (keyring) a frazei de acces utilizate în cryptsetup pentru deblocarea sistemului de fișiere criptat de bază și stabilirea acestei fraze de acces ca token de autentificare (PAM authtok). Modulul poate fi utilizat, de exemplu, pentru configurarea deblocării automate a accesului la GNOME Keyring și KDE Wallet atunci când este activată autentificarea automată.
  • A fost adăugat suportul pentru trecerea în hibernare (hibernation) cu salvarea conținutului memoriei în fișiere de swap, stocate în sistemul de fișiere Btrfs.
  • În unități au fost adăugate proprietățile MemoryPeak, MemorySwapPeak, MemorySwapCurrent și MemoryZSwapCurrent, corespunzătoare proprietăților disponibile prin cgroup v2: memory.peak, memory.swap.peak, memory.swap.current și memory.zswap.current. Informațiile despre aceste proprietăți sunt incluse în output-ul „systemctl status”.
  • A fost reproiectat modul de lansare a serviciilor, care a fost transformat pentru a utiliza apelul posix_spawn cu opțiunile CLONE_VM și CLONE_VFORK pentru a iniția procesul și pentru a aplica un fișier executabil separat systemd-executor pentru configurarea procesului care urmează să fie lansat. Anterior, procesele erau bifurcate prin funcția fork cu copierea memoriei procesului de control în modul copy-on-write și realizarea configurațiilor necesare (montarea spațiilor de nume și stabilirea CGroup) înainte de a lansa fișierul executabil țintă prin apelul exec, ceea ce a dus la probleme din cauza imposibilității de a accesa anumite API-uri Glibc în etapa dintre executarea funcțiilor fork și exec.
  • Codul pentru monitorizarea proceselor interne a fost modificat pentru a utiliza PIDFD în loc de PID în medii cu un nucleu care suportă PIDFD (PIDFD se leagă de un proces specific și nu se schimbă, în timp ce PID poate fi asociat cu un alt proces după finalizarea procesului curent asociat cu acest PID). A fost implementată posibilitatea de a crea unități scope utilizând PIDFD în loc de PID pentru selectarea proceselor.
  • Suportul pentru ierarhii separate de directoare a fost sistat (când /usr este montat separat de rădăcină sau directoarele /bin și /usr/bin, /lib și /usr/lib sunt separate). În viitor, de asemenea, s-a decis să se oprească suportul pentru cgroups v1, scripturi de servicii System V și variabile EFI de SystemdOptions.
  • Comanda „systemctl switch-root” este restricționată pentru a fi aplicabilă doar în initrd. Pentru a înlocui sistemul de fișiere rădăcină într-un mediu obișnuit, ar trebui utilizată „systemctl soft-reboot”.
  • Parametrii SuspendMode, HybridSleepMode, HibernateStat și HybridSleepState din secțiunea „[Sleep]” a fișierului systemd-sleep.conf au fost declarate învechite. Acești parametrii sunt acum ignorați și pot lua doar valori implicite.
  • Unităților li s-a adăugat opțiunea SurviveFinalKillSignal, care permite ignorarea semnalului final SIGTERM/SIGKILL emis în timpul opririi, ceea ce poate fi util pentru menținerea activă a unității în timpul unei reporniri soft a sistemului.
  • A fost adăugată configurația NFTSet, care permite utilizarea identificatorilor cgroup pentru a schimba logica în regulile de firewall.
  • A fost adăugată opțiunea ConditionSecurity=measured-uki, care garantează că unitatea poate fi pornită doar într-un sistem încărcat dintr-o imagine de nucleu verificată în format UKI.
  • În systemd-boot au fost adăugate noi taste rapide „B” și „O” pentru repornirea și oprirea sistemului din meniul de boot. A fost adăugată configurația „menu-disabled” pentru a dezactiva afișarea meniului de boot.
  • Utilitarul systemd-repart a fost extins cu noi opțiuni „—copy-from” pentru a obține descrierile partițiilor din imaginea de sistem de fișiere specificată, „—copy-source” pentru a indica directorul de bază pentru parametrul CopyFiles, „—make-ddi=confext”, „—make-ddi=sysext” și „—make-ddi=portable” pentru generarea diferitelor tipuri de DDI, și „—tpm2-device-key” pentru a lega discul de o cheie publică specifică TPM2.
  • În utilitarul journalctl, parametrul „—lines” a fost îmbogățit cu valoarea „+N” pentru a afișa cele N cele mai vechi înregistrări.
  • În udevadm a fost adăugat steagul „—json” pentru a genera ieșire în format JSON.
  • În utilitarele systemd-analyze, systemd-tmpfiles, systemd-sysusers, systemd-sysctl și systemd-binfmt a fost adăugată opțiunea „—tldr” pentru a afișa doar parametrii reali de configurare fără spații și comentarii.
  • În subsistemul seccomp a fost adăugată suport pentru arhitectura LoongArch64. Se permite utilizarea seccomp pentru filtrarea apelurilor de sistem în serviciile care nu rulează sub utilizatorul root fără a activa setarea NoNewPrivileges=yes.
  • În utilitarul systemd-mount a fost adăugată opțiunea „—tmpfs” pentru a monta o nouă instanță ‘tmpfs’.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster