systemd gestore di sistema versione 246

Dopo cinque mesi di sviluppo presentata rilascio del gestore di sistema systemd 246. La nuova versione include il supporto per il congelamento delle unità, la possibilità di verificare l'immagine del disco root utilizzando una firma digitale, il supporto per la compressione dei log e i core dump utilizzando l'algoritmo ZSTD, la possibilità di sbloccare directory home portatili utilizzando i token FIDO2, il supporto per lo sblocco di Microsoft BitLocker partizioni tramite /etc/crypttab, BlackList è stata rinominata DenyList.

Il principale modifiche:

  • Aggiunto il supporto per il controller delle risorse del congelatore basato su cgroups v2, con il quale è possibile interrompere i processi e liberare temporaneamente alcune risorse (CPU, I/O e potenzialmente anche memoria) per eseguire altre attività. Il congelamento e lo scongelamento delle unità vengono controllati utilizzando il nuovo comando “systemctl freeze” o tramite D-Bus.
  • Aggiunto supporto per la verifica dell'immagine del disco root utilizzando una firma digitale. La verifica viene eseguita utilizzando le nuove impostazioni nelle unità di servizio: RootHash (hash root per verificare l'immagine del disco specificata tramite l'opzione RootImage) e RootHashSignature (firma digitale in formato PKCS#7 per l'hash root).
  • Il gestore PID 1 implementa la capacità di caricare automaticamente le regole AppArmor precompilate (/etc/apparmor/earlypolicy) nella fase di avvio iniziale.
  • Sono state aggiunte nuove impostazioni del file unitario: ConditionPathIsEncrypted e AssertPathIsEncrypted per verificare il posizionamento del percorso specificato su un dispositivo a blocchi che utilizza la crittografia (dm-crypt/LUKS), ConditionEnvironment e AssertEnvironment per verificare le variabili di ambiente (ad esempio, quelle impostate da PAM o quando si impostano i contenitori).
  • Per le unità *.mount è stata implementata l'impostazione ReadWriteOnly che impedisce di montare una partizione in modalità di sola lettura se non è stato possibile montarla in lettura e scrittura. In /etc/fstab questa modalità è configurata utilizzando l'opzione "x-systemd.rw-only".
  • Per le unità *.socket, è stata aggiunta l'impostazione PassPacketInfo, che consente al kernel di aggiungere metadati aggiuntivi per ogni pacchetto letto dal socket (abilita le modalità IP_PKTINFO, IPV6_RECVPKTINFO e NETLINK_PKTINFO per il socket).
  • Per i servizi (*.service unit), vengono proposte le impostazioni di CoredumpFilter (che definisce le sezioni di memoria che dovrebbero essere incluse nei core dump) e
    TimeoutStartFailureMode/TimeoutStopFailureMode (definisce il comportamento (SIGTERM, SIGABRT o SIGKILL) quando si verifica un timeout all'avvio o all'arresto di un servizio).

  • La maggior parte delle opzioni ora supporta i valori esadecimali specificati utilizzando il prefisso "0x".
  • In vari parametri della riga di comando e file di configurazione relativi all'impostazione di chiavi o certificati, è possibile specificare il percorso dei socket Unix (AF_UNIX) per il trasferimento di chiavi e certificati tramite chiamate ai servizi IPC quando non è desiderabile posizionare i certificati su un disco non crittografato magazzinaggio.
  • Aggiunto supporto per sei nuovi specificatori che possono essere utilizzati in unit, tmpfiles.d/, sysusers.d/ e altri file di configurazione: %a per sostituire l'architettura corrente, %o/%w/%B/%W per sostituire i campi con identificatori da /etc/os-release e %l per la sostituzione del nome host breve.
  • I file unit non supportano più la sintassi ".include", deprecata 6 anni fa.
  • Le impostazioni StandardError e StandardOutput non supportano più i valori “syslog” e “syslog-console”, che verranno automaticamente convertiti in “journal” e “journal+console”.
  • Per i mount point basati su tmpfs creati automaticamente (/tmp, /run, /dev/shm, ecc.), vengono forniti limiti sulla dimensione e sul numero di inode, corrispondenti al 50% della dimensione della RAM per /tmp e /dev/ shm e il 10% di RAM per tutti gli altri.
  • Aggiunte nuove opzioni della riga di comando del kernel: systemd.hostname per impostare il nome host nella fase di avvio iniziale, udev.blockdev_read_only per limitare tutti i dispositivi a blocchi associati alle unità fisiche alla modalità di sola lettura (è possibile utilizzare il comando "blockdev --setrw" per annullare selettivamente), systemd .swap per disabilitare l'attivazione automatica della partizione di swap, systemd.clock-usec per impostare l'orologio di sistema in microsecondi, systemd.condition-needs-update e systemd.condition-first-boot per sovrascrivere ConditionNeedsUpdate e ConditionFirstBoot controlli.
  • Per impostazione predefinita, sysctl fs.suid_dumpable è impostato su 2 ("suidsafe"), che consente di salvare i core dump per i processi con il flag suid.
  • Il file /usr/lib/udev/hwdb.d/60-autosuspend.hwdb è stato preso in prestito nel database hardware da ChromiumOS, che include informazioni sui dispositivi PCI e USB che supportano la modalità di sospensione automatica.
  • Un'impostazione ManageForeignRoutes è stata aggiunta a networkd.conf, quando abilitata, systemd-networkd inizierà a gestire tutti i percorsi configurati da altre utilità.
  • Una sezione "[SR-IOV]" è stata aggiunta ai file .network per la configurazione dei dispositivi di rete che supportano SR-IOV (virtualizzazione I/O a radice singola).
  • In systemd-networkd, l'impostazione IPv4AcceptLocal è stata aggiunta alla sezione "[Network]" per consentire la ricezione dei pacchetti in arrivo con un indirizzo di origine locale sull'interfaccia di rete.
  • systemd-networkd ha aggiunto la possibilità di configurare le discipline di prioritizzazione del traffico HTB tramite [HierarchyTokenBucket] e
    [HierarchyTokenBucketClass], "pfifo" tramite [PFIFO], "GRED" tramite [GenericRandomEarlyDetection], "SFB" tramite [StochasticFairBlue], "cake"
    tramite [CAKE], "PIE" tramite [PIE], "DRR" tramite [DeficitRoundRobinScheduler] e
    [DeficitRoundRobinSchedulerClass], "BFIFO" tramite [BFIFO],
    "PFIFOHeadDrop" tramite [PFIFOHeadDrop], "PFIFOFast" tramite [PFIFOFast], "HHF"
    tramite [HeavyHitterFilter], "ETS" tramite [EnhancedTransmissionSelection],
    "QFQ" tramite [QuickFairQueueing] e [QuickFairQueueingClass].

  • In systemd-networkd, un'impostazione UseGateway è stata aggiunta alla sezione [DHCPv4] per disabilitare l'uso delle informazioni sul gateway ottenute tramite DHCP.
  • In systemd-networkd, nelle sezioni [DHCPv4] e [DHCPServer], è stata aggiunta un'impostazione SendVendorOption per l'installazione e l'elaborazione di opzioni aggiuntive del fornitore.
  • systemd-networkd implementa un nuovo set di opzioni EmitPOP3/POP3, EmitSMTP/SMTP e EmitLPR/LPR nella sezione [DHCPServer] per aggiungere informazioni sui server POP3, SMTP e LPR.
  • In systemd-networkd, nei file .netdev nella sezione [Bridge], è stata aggiunta un'impostazione VLANProtocol per selezionare il protocollo VLAN da utilizzare.
  • In systemd-networkd, nei file .network nella sezione [Link], l'impostazione Gruppo è implementata per gestire un gruppo di collegamenti.
  • Le impostazioni della BlackList sono state rinominate in DenyList (preservando la vecchia gestione dei nomi per compatibilità con le versioni precedenti).
  • Systemd-networkd ha aggiunto gran parte delle impostazioni relative a IPv6 e DHCPv6.
  • Aggiunto il comando "forcerenew" a networkctl per forzare l'aggiornamento (lease) di tutti i collegamenti degli indirizzi.
  • In systemd-resolved, nella configurazione DNS, è diventato possibile specificare il numero di porta e il nome host per la verifica del certificato DNS-over-TLS. L'implementazione DNS-over-TLS ha aggiunto il supporto per il controllo SNI.
  • Systemd-resolved ora ha la possibilità di configurare il reindirizzamento dei nomi DNS a etichetta singola (etichetta singola, da un nome host).
  • systemd-journald fornisce supporto per l'utilizzo dell'algoritmo zstd per comprimere campi di grandi dimensioni nei journal. È stato svolto del lavoro per proteggere dalle collisioni nelle tabelle hash utilizzate nei giornali.
  • URL cliccabili con collegamenti alla documentazione sono stati aggiunti a journalctl durante la visualizzazione dei messaggi di registro.
  • Aggiunta un'impostazione di controllo a journald.conf per controllare se il controllo è abilitato durante l'inizializzazione di systemd-journald.
  • Systemd-coredump ora ha la capacità di comprimere i core dump utilizzando l'algoritmo zstd.
  • Aggiunta l'impostazione UUID a systemd-repart per assegnare un UUID alla partizione creata.
  • Il servizio systemd-homed, che fornisce la gestione delle home directory portatili, ha aggiunto la possibilità di sbloccare le home directory utilizzando i token FIDO2. Il backend di crittografia delle partizioni LUKS ha aggiunto il supporto per la restituzione automatica dei blocchi di file system vuoti al termine di una sessione. Aggiunta protezione contro la doppia crittografia dei dati se viene determinato che la partizione /home sul sistema è già crittografata.
  • Aggiunte impostazioni a /etc/crypttab: "keyfile-erase" per eliminare una chiave dopo l'uso e "try-empty-password" per tentare di sbloccare una partizione con una password vuota prima di richiedere una password all'utente (utile per installare immagini crittografate con password assegnata dopo il primo avvio, non durante l'installazione).
  • systemd-cryptsetup aggiunge il supporto per sbloccare le partizioni Microsoft BitLocker all'avvio utilizzando /etc/crypttab. Aggiunta anche la capacità di leggere
    chiavi per sbloccare automaticamente le partizioni dai file /etc/cryptsetup-keys.d/ .key e /run/cryptsetup-keys.d/ .chiave.

  • Aggiunto systemd-xdg-autostart-generator per creare file di unità dai file di avvio automatico .desktop.
  • Aggiunto il comando "reboot-to-firmware" a "bootctl".
  • Aggiunte opzioni a systemd-firstboot: "--image" per specificare l'immagine del disco da avviare, "--kernel-command-line" per inizializzare il file /etc/kernel/cmdline, "--root-password-hashed" per specificare l'hash della password di root e "--delete-root-password" per eliminare la password di root.

Fonte: opennet.ru

Aggiungi un commento