Rilascio del gestore di sistema systemd 242

Dopo due mesi di sviluppo, è stato presentato il rilascio del gestore di sistema systemd 242. Tra le novità si segnala il supporto per i tunnel L2TP, la possibilità di controllare il comportamento di systemd-logind durante il riavvio tramite variabili ambientali, il supporto per le partizioni di avvio estese XBOOTLDR per il montaggio in /boot, la possibilità di avviare con la partizione di root in overlayfs, oltre a un gran numero di nuove impostazioni per diversi tipi di unità.

Principali modifiche:

  • Nel systemd-networkd è stato garantito il supporto per i tunnel L2TP;
  • In sd-boot e bootctl è stata implementata la supporto per le partizioni XBOOTLDR (Extended Boot Loader), destinate al montaggio in /boot, oltre alle partizioni ESP, montate in /efi o /boot/efi. I kernel, le impostazioni, le immagini initrd e EFI possono ora essere caricati sia dalle partizioni ESP che da quelle XBOOTLDR. Questa modifica consente di utilizzare il caricatore sd-boot in scenari più conservativi, quando il caricatore stesso è collocato nell'ESP e i kernel da caricare e i relativi metadati sono separati in un'altra partizione;
  • È stata aggiunta la possibilità di caricare passando all'anima l'opzione «systemd.volatile=overlay», che consente di allocare la partizione radice in overlayfs e di organizzare il funzionamento sopra un'immagine di root accessibile solo in lettura, registrando le modifiche in una cartella separata in tmpfs (le modifiche in questa configurazione vengono perse dopo il riavvio). Analogamente, in systemd-nspawn è stata aggiunta l'opzione «—volatile=overlay» per utilizzare funzionalità simili nei contenitori.
  • In systemd-nspawn è stata aggiunta l'opzione «—oci-bundle», che consente di utilizzare set di runtime per garantire l'esecuzione isolata dei contenitori, conformemente ai requisiti della specifica Open Container Initiative (OCI). Per l'utilizzo nella riga di comando e nelle unità nspawn, è stata proposta la supporto di varie opzioni descritte nella specifica OCI, ad esempio, per escludere parti del filesystem possono essere utilizzate le impostazioni «—inaccessible» e «Inaccessible», mentre per configurare gli stream di output standard sono state aggiunte le opzioni «—console» e «—pipe»;
  • È stata aggiunta la possibilità di gestire il comportamento di systemd-logind tramite variabili d'ambiente: $SYSTEMD_REBOOT_TO_FIRMWARE_SETUP,
    $SYSTEMD_REBOOT_TO_BOOT_LOADER_MENU e
    $SYSTEMD_REBOOT_ TO_BOOT_LOADER_ENTRY. Con queste variabili, puoi collegare i tuoi gestori del processo di riavvio (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu e
    /run/systemd/reboot-to-boot-loader-entry) или вообще отключить их (при выставлении значения в false);
  • Il comando «systemctl reboot» è stato aggiornato con le opzioni «—boot-load-menu=» e
    «—boot-loader-entry=», che permettono di scegliere un'opzione specifica dal menu di avvio o dalla modalità di avvio dopo il riavvio;
  • È stato aggiunto un nuovo comando di isolamento sandbox «RestrictSUIDSGID=», che utilizza seccomp per vietare la creazione di file con i flag SUID/SGID;
  • Le restrizioni «NoNewPrivileges» e «RestrictSUIDSGID» sono ora applicate per impostazione predefinita nei servizi con la modalità di generazione dinamica dell'identificativo utente («DynamicUser») attivata;
  • L'impostazione MACAddressPolicy=persistent, applicata per impostazione predefinita nei file .link, è stata modificata per coprire un numero maggiore di dispositivi. Le interfacce dei bridge di rete, dei tunnel (tun, tap) e dei link aggregati (bond) non si identificano se non per nome dell'interfaccia di rete, quindi ora questo nome viene utilizzato come base per l'associazione degli indirizzi MAC e IPv4. Inoltre, è stata aggiunta l'impostazione «MACAddressPolicy=random», che può essere utilizzata per associare in modo casuale indirizzi MAC e IPv4 ai dispositivi;
  • I file di unità «.device» generati tramite systemd-fstab-generator non includono più le corrispondenti unità «.mount» come dipendenze nella sezione «Wants=». Il semplice collegamento di un dispositivo non comporta più l'avvio automatico dell'unità di montaggio, ma tali unità possono comunque essere avviate per altre ragioni, ad esempio come parte di local-fs.target o come dipendenza da altre unità dipendenti da local-fs.target;
  • Nei comandi «networkctl list/status/lldp» è stata aggiunta la possibilità di utilizzare maschere («*» e simili) per filtrare determinate categorie di interfacce di rete in base al loro nome;
  • La variabile d'ambiente $PIDFILE ora viene impostata utilizzando un percorso assoluto, configurato nei servizi tramite il parametro «PIDFile=;
  • Sono stati aggiunti DNS server di riserva pubblici al numero di server DNS utilizzati se non è specificato un DNS principale, server Cloudflare (1.1.1.1). Per sovrascrivere l'elenco dei server DNS di riserva, è possibile utilizzare l'opzione «-Ddns-servers=»;
  • Alla rilevazione di un controller di dispositivo USB (USB Device Controller) viene avviato automaticamente un nuovo gestore usb-gadget.target (quando il sistema è in esecuzione su un dispositivo periferico USB);
  • Per i file unit è stata implementata la configurazione «CPUQuotaPeriodSec=», che definisce il periodo di tempo rispetto al quale viene misurata la quota di tempo della CPU, impostata tramite la configurazione «CPUQuota=»;
  • Per i file unit è stata implementata la configurazione «ProtectHostname=», che impedisce ai servizi di modificare le informazioni sul nome host, anche in presenza dei relativi permessi;
  • Per i file unit è stata implementata la configurazione «NetworkNamespacePath=», che consente di collegare uno spazio dei nomi ai servizi o ai socket unit tramite l'indicazione del percorso del file dello spazio dei nomi nel pseudo-FS /proc;
  • È stata aggiunta la possibilità di disabilitare la sostituzione delle variabili ambientali per i processi avviati tramite la configurazione «ExecStart=», aggiungendo il simbolo «:» prima del comando di avvio;
  • Per i timer (unità .timer) sono stati introdotti nuovi flag «OnClockChange=» e
    «OnTimezoneChange=», tramite i quali è possibile controllare l'attivazione dell'unità in caso di modifica dell'ora di sistema o del fuso orario;
  • Sono state aggiunte nuove configurazioni «ConditionMemory=» e «ConditionCPUs=», che definiscono le condizioni per l'attivazione dell'unità in base alla dimensione della memoria e al numero di core della CPU (ad esempio, un servizio ad alta intensità di risorse può essere avviato solo se è disponibile un determinato quantitativo di RAM);
  • È stato aggiunto un nuovo unità time-set.target, che accetta l'ora di sistema installata localmente senza utilizzare il controllo con server esterni di ora esatta tramite l'unità time-sync.target. Questa nuova unità può essere utilizzata dai servizi che necessitano solo della precisione delle ore locali non sincronizzate.
  • Nelle comandi come «systemctl start» è stata aggiunta l'opzione «—show-transaction», che produce un riepilogo di tutte le operazioni aggiunte in coda a causa dell'operazione richiesta.
  • In systemd-networkd è stata implementata la definizione di un nuovo stato ‘enslaved’, utilizzato invece di ‘degraded’ o ‘carrier’ per le interfacce di rete che fanno parte di link aggregati o ponti di rete. Per le interfacce primarie, in caso di problemi con uno dei link costitutivi, è stato aggiunto lo stato ‘degraded-carrier’.
  • Negli unità .network è stata aggiunta l'opzione «IgnoreCarrierLoss=» per mantenere le impostazioni di rete in caso di interruzione della connessione.
  • Attraverso la configurazione «RequiredForOnline=» negli unità .network ora è possibile impostare lo stato minimo consentito del link necessario per portare l'interfaccia di rete in «online» e attivare il gestore systemd-networkd-wait-online.
  • In systemd-networkd-wait-online, the option "—any" has been added to wait for the readiness of any of the specified network interfaces instead of all, as well as the option "—operational-state=" to determine the link state indicating readiness;
  • In .network units, the settings "UseAutonomousPrefix=" and "UseOnLinkPrefix=" have been added, which can be used to ignore prefixes when receiving
    announcements from the IPv6 router (RA, Router Advertisement);
  • In .network units, the settings "MulticastFlood=", "NeighborSuppression=", and "Learning=" have been added to change the parameters of bridge operation, as well as the setting "TripleSampling=" to change the TRIPLE-SAMPLING mode of CAN virtual interfaces;
  • In .netdev units, the settings "PrivateKeyFile=" and "PresharedKeyFile=" have been added, which allow you to specify private and shared (PSK) keys for WireGuard interfaces. VPN;
  • In /etc/crypttab, the options same-cpu-crypt and submit-from-crypt-cpus have been added, controlling the scheduler's behavior during migration between CPU cores for encryption-related tasks;
  • In systemd-tmpfiles, file locking is now handled before performing operations in directories with temporary files, allowing for the temporary disabling of cleaning up old files (for example, when unpacking a tar archive in /tmp, very old files may be revealed that cannot be deleted until the action with them is completed).
  • The command 'systemd-analyze cat-config' now supports analyzing configurations spread across multiple files, such as user and system presets, contents of tmpfiles.d and sysusers.d, udev rules, and so on.
  • The 'journalctl' command has added the option '--cursor-file=' to specify a file for loading and saving position pointers.
  • In systemd-detect-virt, detection of the ACRN hypervisor and the Windows Subsystem for Linux (WSL) has been added for subsequent branching using the 'ConditionVirtualization' conditional operator.
  • During the installation of systemd (when executing 'ninja install'), the creation of symbolic links to files systemd-networkd.service, systemd-networkd.socket,
    systemd-resolved.service, remote-cryptsetup.target, remote-fs.target in the /etc directory has been discontinued.
    È necessario eseguire il comando «systemctl preset-all» per creare i file systemd-networkd-wait-online.service e systemd-timesyncd.service.

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