Dopu à trè mesi di sviluppu, systemd 259 hè avà dispunibule. I cambiamenti chjave includenu u supportu per a biblioteca standard Musl, u cumandamentu "run0 --empower" per eseguisce azzioni privilegiate senza cambià l'UID, u caricamentu dinamicu di biblioteche di terze parti richieste da libsystemd, è l'ignurazione di i fugliali di cunfigurazione aghjunghjendu ".ignore" à i so nomi.
Trà i cambiamenti in a nova versione:
- Hè statu aghjuntu un supportu parziale per a biblioteca C standard Musl. Questu hè attivatu impostendu u valore "musl" in l'opzione "libc" in u sistema di compilazione Meson. Siccome a biblioteca Musl ùn furnisce micca funzionalità NSS, i seguenti cumpunenti ùn sò micca dispunibili quandu si compila systemd cù Musl: nss-systemd, nss-resolve, systemd-homed, systemd-nsresourced, systemd-userdbd, u parametru DynamicUser, è a capacità di eseguisce systemd-nspawn senza privilegi. I sviluppatori di systemd ùn garantiscenu micca attualmente chì u supportu Musl resterà in e versioni future. Sta decisione dipenderà da u sviluppu successu di u stratu chì implementa funzionalità supplementari sopra Musl, è ancu da a dumanda per u prugettu è da i rapporti di bug specifichi di Musl.
- L'utilità run0, cummercializata cum'è un rimpiazzamentu sicuru per sudo chì funziona sopra systemd-run, include avà l'opzione "--empower", chì vi permette di lancià una nova sessione cù privilegi elevati senza passà à l'utilizatore root. L'esecuzione di azzioni privilegiate senza cambià UID hè abilitata impostendu flag di capacità, cum'è CAP_SYS_ADMIN, chì sò sufficienti per eseguisce a maiò parte di e chjame di sistema privilegiate. I prucessi lanciati sò ancu piazzati in un gruppu "empower" separatu, chì hà accessu à a maiò parte di l'azzioni Polkit.
- Hè statu decisu di caccià u supportu per i script di serviziu System V in a prossima versione. I cumpunenti systemd-sysv-install, systemd-rc-local-generator, è systemd-sysv-generator sò previsti per esse rimossi. A prossima versione prevede ancu di aumentà i requisiti minimi di versione per u kernel. Linux 5.10, glibc 2.34, openssl 3.0.0, python 3.9.0, libxcrypt 4.4.0, util-linux 2.37, elfutils 0.177, cryptsetup 2.4.0, libseccomp 2.4.0.
- Cum'è parte di l'iniziativa di riduzione di e dipendenze, libsystemd carica avà dinamicamente e biblioteche libacl, libblkid, libseccomp, libselinux è libmount aduprendu dlopen() quandu e so funzioni sò veramente necessarie. dlopen() furnisce ancu accessu à u sottosistema di audit. Linux è cù PAM. A funziunalità prima chjamata per mezu di a biblioteca intermediaria libcap hè integrata in libsystemd.
- systemd-resolved supporta avà l'attaccamentu di hooks lucali chì sò chjamati ogni volta chì una dumanda di risoluzione di nome lucale hè fatta. I hooks si trovanu in u cartulare /run/systemd/resolve.hook/.
- Un campu UUID hè statu aghjuntu à a basa di dati di l'utilizatori, è l'opzione "--uuid" per a ricerca per UUID hè stata aghjunta à l'utilità userdbctl.
- I fugliali di cunfigurazione cù nomi chì finiscenu per "ignore" sò avà ignorati.
- systemd-importd implementa a logica integrata per u travagliu cù l'archivi TAR, aduprendu a funzione libarchive per l'utilità GNU tar. Systemd-machined è systemd-importd ponu avà esse eseguiti per utilizatore, invece di à u livellu di u sistema, cù l'imagine di u sistema caricate in ~/.local/state/machines/. L'opzioni "--user" è "--system" sò state aghjunte à l'utilità importctl per selezziunà a modalità operativa.
- U modu di almacenamentu di log predefinitu hè statu cambiatu da "auto" à "persistente" (prima u modu dipendeva da a presenza di u cartulare /var/log/journal).
- systemd-networkd è systemd-nspawn anu abbandunatu u supportu per a creazione di regule di traduzzione di l'indirizzi di rete (NAT) via iptables/libiptc. Solu u supportu di nftables ferma.
- U supportu TPM 1.2 hè statu abbandunatu in systemd-boot è systemd-stub (u supportu TPM 2.0 ferma).
- Per difettu, systemd-machined assicura chì l'imagine di discu "nascoste", chì u so nome principia cù un puntu, sò muntate in modu di sola lettura.
- L'API basata annantu à Varlink hè stata allargata, permettenduli di accede à i paràmetri di serviziu. E chjamate IPC Reload() è Reexecute() sò state implementate. E chjamate sò state aghjunte per accede à e funziunalità è à i paràmetri di systemd-repart, systemd-resolved è systemd-networkd.
- Aghjuntu u paràmetru ExecReloadPost, chì permette d'urganizà u lanciu di i cumandamenti dopu avè ricaricatu a cunfigurazione di u serviziu.
- E pruprietà OOMKills è ManagedOOMKills sò state implementate per i servizii, chì cuntenenu u numeru di prucessi terminati furzatamente da u kernel o systemd-oomd per via di a mancanza di memoria.
- Per i servizii tempuranei, hè stata aghjunta a pruprietà RootDirectoryFileDescriptor, chì definisce u descrittore di file di u cartulare radice.
- L'impostazione UserNamespacePath hè stata aghjunta, chì permette à una unità d'esse ligata à un spaziu di nomi d'utilizatore specificendu un percorsu in u pseudo-sistema di fugliali /proc, simile à l'impostazioni IPCNamespacePath è NetworkNamespacePath. In systemd-nspawn, una impostazione NamespacePath hè stata aghjunta à a sezione [Network] di i fugliali .nspawn per specificà u spaziu di nomi di rete.
- systemd-sysext è systemd-confext supportanu avà i fugliali di cunfigurazione separati, /etc/systemd/systemd-sysext.conf è /etc/systemd/systemd-confext.conf. E variabili d'ambiente SYSTEMD_SYSEXT_OVERLAYFS_MOUNT_OPTIONS è $SYSTEMD_CONFEXT_OVERLAYFS_MOUNT_OPTIONS ponu esse aduprate avà per cunfigurà l'opzioni di muntatura di Overlayfs.
- L'impostazione OPTIONS="dump-json" hè stata aghjunta à systemd-udevd per visualizà u statu attuale di l'eventu in furmatu JSON. A funzione net_id genera avà nomi prevedibili per l'interfacce di rete wireless nantu à i sistemi cù DeviceTree. I ligami simbolichi /dev/gpio/by-id/... sò avà generati per i dispositivi GPIO.
- U cumandamentu "homectl update" avà supporta l'opzione "--recovery-key" per aghjunghje chjave di riserva à un contu utilizatore esistente (prima, tali chjave pudianu esse aghjunte solu durante a creazione di l'utente).
- L'opzioni "--prompt-shell" è "--prompt-groups" sò state aghjunte à systemd-homed per selezziunà interattivamente una shell è un gruppu durante u primu avviu cù u serviziu systemd-homed-firstboot.service. L'opzione "--prompt-keymap-auto" hè stata aghjunta à systemd-firstboot per dumandà una dispusizione di tastiera quandu si usa a cunsola lucale durante u primu avviu.
- In systemd-boot, a capacità di definisce u livellu di dettagliu di u log hè stata aghjunta via u parametru log-level in loader.conf o u campu SMBIOS io.systemd.boot.loglevel.
- L'opzioni EmitDomain è Domain sò state aghjunte à systemd-networkd per u servitore DHCP, è un gestore hè statu implementatu per determinà i nomi di host emessi via DHCP via risoluzione DNS.
- L'opzione "--root-directory" hè stata aghjunta à systemd-run per avvià un serviziu in u cartulare root specificatu. L'opzione "--same-root-dir" ("-R") hè stata aghjunta à systemd-run è run0 per avvià un serviziu in u listessu cartulare root cum'è quellu chì l'esegue.
- systemd-modules-load implementa u caricamentu parallelu di i moduli di u kernel.
- U supportu per l'algoritmi HMAC-SHA256, PHMAC-SHA256 è PHMAC-SHA512 hè statu aghjuntu à systemd-integrity-setup.
Source: opennet.ru
