Liberazione di u gestore di sistema systemd 252 cù supportu UKI (Unified Kernel Image).

Dopu à cinque mesi di sviluppu, a liberazione di u sistema di gestione systemd 252 hè stata presentata U cambiamentu chjave in a nova versione era l'integrazione di supportu per un prucessu di boot mudernizatu, chì permette di verificà micca solu u kernel è u bootloader, ma ancu i cumpunenti. di l'ambienti di u sistema di basa cù firme digitali.

U metudu prupostu implica l'usu di una maghjina di kernel unificata UKI (Unified Kernel Image) durante a carica, chì combina un gestore per a carica di u kernel da UEFI (UEFI boot stub), una immagine di kernel Linux è l'ambiente di sistema initrd caricatu in memoria, utilizatu. per l'inizializazione iniziale in u stadiu prima di muntà a radica FS. L'imagine UKI hè imballata cum'è un unicu schedariu eseguibile in formatu PE, chì pò esse carricatu cù bootloaders tradiziunali o chjamati direttamente da u firmware UEFI. Quandu chjamatu da UEFI, hè pussibule di verificà l'integrità è l'affidabilità di a firma digitale di micca solu u kernel, ma ancu u cuntenutu di l'initrd.

Per calculà i parametri di i registri TPM PCR (Trusted Platform Module Platform Configuration Register) utilizati per monitorà l'integrità è generà una firma digitale di l'imagine UKI, hè inclusa una nova utilità systemd-misure. A chjave publica è l'infurmazioni PCR chì l'accompagnanu utilizati in a firma ponu esse incrustati direttamente in l'imagine di u boot UKI (a chjave è a firma sò salvate in un schedariu PE in i campi '.pcrsig' è '.pcrkey') è estratti da ellu da esterni. o utilità internu.

In particulare, l'utilità systemd-cryptsetup, systemd-cryptenroll è systemd-creds sò stati adattati per utilizà sta informazione, cù quale pudete assicurà chì e partizioni di discu criptate sò ligati à un kernel firmatu digitalmente (in questu casu, l'accessu à a partizione criptata). hè furnitu solu se l'imaghjini UKI hà passatu a verificazione da a firma digitale basata nantu à i paràmetri situati in TPM).

Inoltre, l'utilità systemd-pcrphase hè inclusa, chì vi permette di cuntrullà u ligame di diverse fasi di boot à i paràmetri situati in a memoria di i criptoprocessori chì supportanu a specificazione TPM 2.0 (per esempiu, pudete fà a chjave di decifrazione di partizioni LUKS2 dispunibule solu in l'imaghjini initrd è bluccà l'accessu à questu in stadi successivi di scaricamentu).

Certi altri cambiamenti:

  • Assicura chì u locale predeterminatu hè C.UTF-8, salvu chì un altru locale hè specificatu in i paràmetri.
  • Avà hè pussibule di realizà una operazione predeterminata di serviziu cumpleta ("systemctl preset") durante u primu boot. L'attivazione di presets à u mumentu di l'avviamentu richiede di custruisce cù l'opzione "-Dfirst-boot-full-preset", ma hè prevista per esse attivata per automaticamente in versioni future.
  • L'unità di gestione di l'utilizatori implicanu un controller di risorse di CPU, chì hà permessu di assicurà chì i paràmetri di CPUWeight sò applicati à tutte e unità di slice aduprate per sparte u sistema in parti (app.slice, background.slice, session.slice) per isolà e risorse trà diversi servizii d'utilizatori, cumpetenu per risorse CPU. CPUWeight supporta ancu u valore "idle" per attivà u modu di approvvigionamentu di risorse appropritatu.
  • In unità temporanee ("transienti") è in l'utilità systemd-repart, l'annullamentu di i paràmetri hè permessu da a creazione di file drop-in in u cartulare /etc/systemd/system/name.d/.
  • Per l'imaghjini di u sistema, a bandiera di supportu hè stabilitu, determinendu stu fattu basatu annantu à u valore di u novu paràmetru "SUPPORT_END=" in u file /etc/os-release.
  • Added "ConditionCredential=" è "AssertCredential=", chì ponu esse aduprati per ignurà o crash unità se certi credenziali ùn sò micca prisenti in u sistema.
  • Aghjunghjite i paràmetri "DefaultSmackProcessLabel=" è "DefaultDeviceTimeoutSec="" à system.conf è user.conf per definisce u nivellu di sicurezza predeterminatu SMACK è u timeout di attivazione di unità.
  • In i paràmetri "ConditionFirmware=" è "AssertFirmware=", a capacità di specificà campi SMBIOS individuali hè stata aghjunta, per esempiu, per lancià una unità solu se u campu /sys/class/dmi/id/board_name cuntene u valore "Custom". Board", pudete specificà "ConditionFirmware = smbios" -field (board_name = "Custom Board")".
  • Durante u prucessu d'inizializazione (PID 1), l'abilità di impurtà credenziali da i campi SMBIOS (Tipu 11, "stringi di venditore OEM") hè stata aghjunta in più di a so definizione via qemu_fwcfg, chì simplifica a pruvisione di credenziali à e macchine virtuali è elimina u bisognu di strumenti di terzu-party cum'è nuvola -init è ignition.
  • Durante l'arrestu, a logica per unmounting di sistemi di schedarii virtuali (proc, sys) hè stata cambiata è l'infurmazioni nantu à i prucessi chì bloccanu l'unmounting di i sistemi di schedari sò salvate in u log.
  • U filtru di chjama di u sistema (SystemCallFilter) permette l'accessu à a chjama di u sistema riscv_flush_icache per automaticamente.
  • U bootloader sd-boot aghjusta a capacità di boot in modu mistu, in quale u kernel Linux 64-bit corre da u firmware UEFI 32-bit. Aggiunta capacità sperimentale per applicà automaticamente e chjave SecureBoot da i fugliali truvati in ESP (partizione di sistema EFI).
  • Nove opzioni sò state aghjunte à l'utilità bootctl: "-all-architectures" per installà binari per tutte l'architetture EFI supportate, "-root=" è "-image=" per travaglià cù un cartulare o immagine di discu, "-install-source. =" per definisce a fonte per l'installazione, "-efi-boot-option-description=" per cuntrullà i nomi di l'entrata di boot.
  • U cumandimu "list-automounts" hè statu aghjuntu à l'utilità systemctl per vede una lista di cartulari muntati automaticamente è l'opzione "--image=" per eseguisce cumandamenti in relazione à l'imaghjini di discu specificate. Aghjunghjite l'opzioni "--state=" è "--type=" à i cumandamenti "show" è "status".
  • systemd-networkd hà aghjustatu l'opzioni "TCPCongestionControlAlgorithm =" per selezziunà l'algoritmu di cuntrollu di congestione TCP, "KeepFileDescriptor =" per salvà u descrittore di file di interfacce TUN / TAP, "NetLabel =" per stabilisce NetLabels, "RapidCommit =" per accelerà a cunfigurazione via DHCPv6 (RFC 3315). U paràmetru "RouteTable=" permette di specificà i nomi di e tabelle di routing.
  • systemd-nspawn permette l'usu di percorsi di file relative in l'opzioni "--bind=" è "--overlay=". Aghjunghje supportu per u paràmetru "rootidmap" à l'opzione "--bind=" per ligà l'ID d'utilizatore root in u containeru à u pruprietariu di u cartulare muntatu da u latu di l'ospiti.
  • systemd-resolved usa OpenSSL cum'è u so backend di criptografia per difettu (u supportu gnutls hè conservatu cum'è una opzione). L'algoritmi DNSSEC senza supportu sò avà trattati cum'è micca sicuri invece di vultà un errore (SERVFAIL).
  • systemd-sysusers, systemd-tmpfiles è systemd-sysctl implementanu a capacità di trasfiriri paràmetri per mezu di un mecanismu di almacenamiento di credenziali.
  • Aggiuntu u cumandimu "compare-versions" à l'utilità systemd-analyse per paragunà strings cù numeri di versione (simile à "rpmdev-vercmp" è "dpkg --compare-versions"). Aggiunta a capacità di filtrà unità per maschera à u cumandimu "systemd-analyze dump".
  • Quandu selezziunate un modu di sonnu multi-stadi (suspende-poi-hibernate), u tempu passatu in u modu di standby hè avà sceltu basatu annantu à a previsione di a vita di a bateria restante. A transizione istantanea à u modu di sonnu si verifica quandu a carica di a batteria hè menu di 5%.
  • Un novu modu di output "-o short-delta" hè statu aghjuntu à 'journalctl', affissendu a diferenza di tempu trà i diversi missaghji in u log.
  • systemd-repart aghjusta supportu per a creazione di partizioni cù u sistema di schedari Squashfs è partizioni per dm-verity, ancu cù signature digitale.
  • Aggiuntu "StopIdleSessionSec=" paràmetru à systemd-logind per finisce una sessione inattiva dopu un timeout specificu.
  • Systemd-cryptenroll hà aghjustatu una opzione "--unlock-key-file=" per estrae a chjave di decifrazione da un schedariu invece di invià l'utilizatore.
  • Avà hè pussibule di eseguisce l'utilità systemd-growfs in ambienti senza udev.
  • systemd-backlight hà migliuratu u supportu per i sistemi cù parechje carte grafiche.
  • A licenza per l'esempi di codice furnite in a documentazione hè stata cambiata da CC0 à MIT-0.

Cambiamenti chì rompenu a cumpatibilità:

  • Quandu verificate u numeru di versione di u kernel utilizendu a direttiva ConditionKernelVersion, un paragone simplice di stringa hè avà utilizatu in l'operatori '=' è '!=', è se l'operatore di paraguni ùn hè micca specificatu in tuttu, a cunfrontazione glob-mask pò esse usata usendu caratteri '*', '?' È '[', ']'. Per paragunà e versioni di stile stverscmp (), utilizate l'operatori '<', '>', '<=' è '>='.
  • L'etichetta SELinux utilizata per verificà l'accessu da un schedariu di unità hè avà lettu à u mumentu chì u schedariu hè caricatu, piuttostu cà à u mumentu di u cuntrollu di l'accessu.
  • A cundizione "ConditionFirstBoot" hè avà attivata nantu à u primu boot di u sistema solu direttamente in u stadiu di boot è torna "false" quandu chjamanu unità dopu chì u boot hè cumpletu.
  • In 2024, systemd pensa à piantà di sustene u mecanismu di limitazione di risorse cgroup v1, chì era deprecated in systemd release 248. L'amministratori sò cunsigliati per piglià cura in anticipu di migrazione di servizii basati in cgroup v2 à cgroup v1. A diferenza chjave trà i cgroups v2 è v1 hè l'usu di una ghjerarchia di cgroups cumuni per tutti i tipi di risorse, invece di gerarchie separati per l'assignazione di risorse CPU, per regulà u cunsumu di memoria, è per I / O. Gerarchie separati portanu à difficultà in l'urganizazione di l'interazzione trà i gestori è à costi supplementari di risorse di u kernel quandu si applicanu e regule per un prucessu riferitu in diverse gerarchie.
  • In a seconda mità di u 2023, pensemu di finisce u supportu per e gerarchie di directory split, induve / usr hè muntatu separatamente da a radica, o /bin è /usr/bin, /lib è /usr/lib sò separati.

Source: opennet.ru

Add a comment