Rilascio del gestore di sistema systemd 255

Dopo quattro mesi di sviluppo, è stata presentata la versione del gestore di sistema systemd 255. Tra i miglioramenti più significativi: supporto per l'esportazione di dispositivi tramite NVMe-TCP, il componente systemd-bsod per visualizzare a schermo intero i messaggi di errore, l'utilità systemd-vmspawn per avviare macchine virtuali, l'utilità varlinkctl per gestire i servizi Varlink, l'utilità systemd-pcrlock per analizzare i registri TPM2 PCR e generare regole di accesso, e il modulo di autenticazione pam_systemd_loadkey.so.

Modifiche chiave nel nuovo rilascio:

  • È stato aggiunto il componente «systemd-storagetm», che consente di esportare automaticamente tutti i dispositivi di blocco locali utilizzando il driver NVMe-TCP (NVMe over TCP), che permette l'accesso ai dispositivi NVMe su rete (NVM Express over Fabrics), utilizzando il protocollo TCP. La nuova unità «storage-target-mode.target» gestisce l'accesso in modalità NVMe over TCP e può essere attivata al momento dell'avvio specificando nella riga di comando del kernel «rd.systemd.unit=storage-target-mode.target», ad esempio, quando è necessario accedere in remoto a un dispositivo per scopi diagnostici.
  • È stato aggiunto il componente «systemd-bsod» che implementa un analogo del «blue screen of death», consentendo durante la fase di avvio di visualizzare messaggi di errori critici (LOG_EMERG) come avviso a schermo intero.
  • È stata aggiunta l'utilità «systemd-vmspawn», che rappresenta l'equivalente dell'utilità systemd-nspawn per avviare un'immagine di sistema operativo in una macchina virtuale (l'utilità systemd-nspawn è destinata all'esecuzione di container, mentre systemd-vmspawn fornisce un'interfaccia simile per macchine virtuali). Attualmente, l'unico backend disponibile per l'avvio delle macchine virtuali è basato su QEMU.
  • È stata aggiunta l'utilità «varlinkctl» per chiamare e ispezionare i servizi che utilizzano il protocollo Varlink.
  • È stata aggiunta l'utilità «systemd-pcrlock» per analizzare e prevedere gli stati dei registri TPM2 PCR (Platform Configuration Register) e per formare le regole di accesso memorizzate nell'indice TPM2 NV, che consentono l'accesso agli oggetti TPM2, come ad esempio le chiavi di crittografia del disco, solo da componenti sostenuti da una firma digitale verificata, eseguiti durante la fase di avvio verificato. Come input per l'analisi, può essere utilizzato il risultato della richiesta di stato PCR in TPM2, fornito dal firmware UEFI del registro eventi dell'attuale avvio (\/sys\/kernel\/security\/tpm0\/binary_bios_measurements) o dal registro TPM2 memorizzato localmente (\/run\/log\/systemd\/tpm2-measure.log). Il supporto per le regole di accesso memorizzate è stato aggiunto a systemd-cryptsetup, systemd-cryptenroll e systemd-repart.
  • È stato aggiunto il modulo PAM pam_systemd_loadkey.so, progettato per estrarre automaticamente dal keyring del kernel la password utilizzata in cryptsetup per sbloccare il file system radice crittografato e impostare questa password come token di autenticazione (PAM authtok). Il modulo può essere utilizzato, ad esempio, per configurare lo sblocco automatico dell'accesso a GNOME Keyring e KDE Wallet durante l'accesso automatico al sistema.
  • È stato aggiunto il supporto per la modalità ibernazione che conserva il contenuto della memoria in file di swap memorizzati nel file system Btrfs.
  • Nei unit sono state aggiunte le proprietà MemoryPeak, MemorySwapPeak, MemorySwapCurrent e MemoryZSwapCurrent, corrispondenti alle proprietà disponibili tramite cgroup v2 memory.peak, memory.swap.peak, memory.swap.current e memory.zswap.current. Le informazioni su queste proprietà sono state incluse nell'output di «systemctl status».
  • È stato riprogettato il metodo di avvio dei servizi, che è stato convertito per utilizzare la chiamata posix_spawn con le opzioni CLONE_VM e CLONE_VFORK per avviare il processo e applicare un file eseguibile separato systemd-executor per configurare il processo avviato. In precedenza, i processi venivano ramificati tramite la funzione fork, con copia della memoria del processo principale in modalità copy-on-write, e l'esecuzione delle necessarie configurazioni (montaggio degli spazi dei nomi e impostazione del CGroup) prima di avviare il file eseguibile target tramite la chiamata exec, il che portava a problemi a causa dell'impossibilità di accedere ad alcune API Glibc nello stadio tra l'esecuzione delle funzioni fork ed exec.
  • Il codice per il tracciamento dei processi interni è stato aggiornato per utilizzare PIDFD invece di PID in ambienti con kernel che supportano PIDFD (PIDFD è legato a un processo specifico e non cambia, mentre il PID può essere associato a un altro processo dopo il completamento del processo attuale associato a quel PID). È stata implementata la possibilità di creare scope unit utilizzando PIDFD invece di PID per selezionare i processi.
  • È stata interrotta la supporto per gerarchie di directory separate (quando /usr è montato separatamente dalla radice o le directory /bin e /usr/bin, /lib e /usr/lib sono separate). In futuro, è previsto anche l'abbandono del supporto per cgroups v1, script di servizi System V e variabili EFI di SystemdOptions.
  • Il comando «systemctl switch-root» è limitato all'uso solo in initrd. Per sostituire il filesystem root in un ambiente normale, si dovrebbe utilizzare «systemctl soft-reboot».
  • I parametri SuspendMode, HybridSleepMode, HibernateStat e HybridSleepState sono stati dichiarati obsoleti nella sezione «[Sleep]» del file systemd-sleep.conf. Questi parametri ora vengono ignorati e possono assumere solo valori predefiniti.
  • È stata aggiunta un'opzione SurviveFinalKillSignal alle unità, che consente di ignorare il segnale finale SIGTERM/SIGKILL emesso durante lo spegnimento, il che può essere utile per mantenere attiva l'unità durante un riavvio morbido del sistema in modalità soft-reboot.
  • È stata aggiunta una configurazione NFTSet, che consente di utilizzare gli identificatori cgroup per cambiare la logica nelle regole del firewall.
  • È stata aggiunta un'opzione ConditionSecurity=measured-uki, che garantisce che l'unità possa essere avviata solo in un sistema avviato con un'immagine di kernel verificata in formato UKI.
  • In systemd-boot sono state aggiunte nuove scorciatoie da tastiera «B» e «O» per riavviare e spegnere il sistema dal menu di avvio. È stata aggiunta la configurazione «menu-disabled» per disabilitare la visualizzazione del menu di avvio.
  • Sono state aggiunte nuove opzioni all'utilità systemd-repart: «—copy-from» per ottenere descrizioni della partizione da un'immagine di FS specificata, «—copy-source» per specificare la directory di base per l'opzione CopyFiles, «—make-ddi=confext», «—make-ddi=sysext» e «—make-ddi=portable» per generare diversi tipi di DDI, e «—tpm2-device-key» per associare un disco a una chiave pubblica specifica TPM2.
  • Nell'utilità journalctl è stato aggiunto al parametro «—lines» il valore «+N» per visualizzare le N voci più vecchie.
  • In udevadm è stata aggiunta l'opzione «—json» per l'output in formato JSON.
  • Nelle utility systemd-analyze, systemd-tmpfiles, systemd-sysusers, systemd-sysctl e systemd-binfmt è stata aggiunta l'opzione «—tldr» per visualizzare solo i parametri di configurazione effettivi senza spazi e commenti.
  • Nella sottosistema seccomp è stato aggiunto il supporto per l'architettura LoongArch64. È consentito l'uso di seccomp per filtrare le chiamate di sistema nei servizi eseguiti non sotto l'utente root senza abilitare l'impostazione NoNewPrivileges=yes.
  • Nell'utility systemd-mount è stata aggiunta l'opzione «—tmpfs» per montare una nuova istanza di ‘tmpfs’.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster