Négy hónapos fejlesztés után megjelent a systemd 255-ös verziója. A legfontosabb fejlesztések között szerepel: tárolók exportálásának támogatása NVMe-TCP-n keresztül, a systemd-bsod komponens a hibaüzenetek teljes képernyős megjelenítésére, a systemd-vmspawn segédeszköz virtuális gépek indításához, a varlinkctl eszköz a Varlink szolgáltatások kezelésére, a systemd-pcrlock modul a TPM2 PCR regiszterek elemzésére és hozzáférési szabályok generálására, valamint a pam_systemd_loadkey.so hitelesítési modul.
Key changes in the new release:
- Hozzáadva a «systemd-storagetm» komponens, amely lehetővé teszi az összes helyi blokk eszköz automatikus exportálását az NVMe-TCP (NVMe over TCP) meghajtó segítségével, amely lehetővé teszi az NVMe tárolók hálózaton keresztüli elérését (NVM Express over Fabrics) TCP protokoll használatával. Az NVMe over TCP mód engedélyezéséért a «storage-target-mode.target» új egység felelős, amely az indítási szakaszban aktiválható a kernel parancssorában a «rd.systemd.unit=storage-target-mode.target» megadásával, például távoli hozzáférés szükségessége esetén a tárolóhoz diagnosztikai célokra.
- Hozzáadva a «systemd-bsod» komponens, amely a «halál kék képernyőjének» megfelelője, lehetővé téve, hogy a rendszerindítás során kritikus hibaüzenetek (LOG_EMERG) jelenjenek meg teljes képernyős értesítés formájában.
- Hozzáadva a «systemd-vmspawn» segédeszköz, amely a systemd-nspawn eszköz megfelelője az operációs rendszer képeinek virtuális gépben való futtatásához (az systemd-nspawn eszköz konténerek indítására szolgál, míg a systemd-vmspawn hasonló interfészt biztosít a virtuális gépek számára. virtuális gépekhez) Jelenleg csak a QEMU alapú háttér válik elérhetővé virtuális gépek indításához.
- Hozzáadva a «varlinkctl» eszköz a Varlink protokollt használó szolgáltatások meghívására és introspektálására.
- Hozzáadva a „systemd-pcrlock” eszköz az TPM2 PCR (Platform Configuration Register) regiszterek állapotának elemzésére és előrejelzésére, valamint a TPM2 NV indexben tárolt hozzáférési szabályok létrehozására, amelyek lehetővé teszik a TPM2 objektumok, például a lemezkódoló kulcsok hozzáférését csak az ellenőrzött digitális aláírással rendelkező komponensekből, amelyek a megerősített indítási fázisban futnak. Az elemzés bemeneti adatai között szerepelhet a TPM2 PCR állapotának lekérdezése keretében az UEFI firmware által kiadott eseménynapló ( /sys/kernel/security/tpm0/binary_bios_measurements) vagy a helyben tárolt TPM2 napló ( /run/log/systemd/tpm2-measure.log). A mentett hozzáférési szabályok támogatása hozzáadva a systemd-cryptsetuphoz, systemd-cryptenrollhoz és systemd-reparthoz.
- Hozzáadva a PAM-modul pam_systemd_loadkey.so, amely automatikusan kinyeri a cryptsetup által az elkódolt gyökér fájlrendszer feloldásához használt jelszót a kernel kulcstárából (keyring), és ezt a jelszót autentikációs tokenként (PAM authtok) beállítja. A modul alkalmazható például a GNOME Keyring és a KDE Wallet automatikus feloldásának beállítására, amikor az automatikus bejelentkezés engedélyezve van.
- Hozzáadva a hibernálás (hibernation) támogatása, amely megőrzi a memória tartalmát az Btrfs fájlrendszerben tárolt swap fájlokban.
- A egységekhez hozzáadva a MemoryPeak, MemorySwapPeak, MemorySwapCurrent és MemoryZSwapCurrent tulajdonságok, amelyek a cgroup v2 keretes memória tulajdonságaihoz kapcsolódnak: memory.peak, memory.swap.peak, memory.swap.current és memory.zswap.current. Az ezen tulajdonságokkal kapcsolatos információk megjelennek a „systemctl status” kimenetében.
- Átdolgozva a szolgáltatások indításának módja, amely most a posix_spawn hívás használatára irányul CLONE_VM és CLONE_VFORK opciókkal a folyamat indítására, és alkalmazva egy külön végrehajtható fájlt, a systemd-executor-t a futtatandó folyamat beállításához. Korábban a folyamatok a fork funkcióval osztódtak, a vezérlő folyamat memóriájának másolásával copy-on-write módban, szükséges beállítások (névtér-melvények és CGroup beállítások) elvégzése előtt a cél végrehajtható fájl futtatása az exec hívással, ami problémákhoz vezetett, mivel nem volt lehetőség bizonyos Glibc API-k elérésére a fork és exec közötti fázisban.
- A belső folyamatok nyomon követési kódja átállt a PIDFD használatára PID helyett olyan környezetekben, ahol a kernel támogatja a PIDFD-t (a PIDFD egy adott folyamathoz kapcsolódik, és nem változik, míg a PID egy másik folyamathoz köthető az aktuális folyamat befejezése után, amelyhez az adott PID társult). Implementálva lett a scope-unitok létrehozásának lehetősége, a PIDFD használatával a folyamatok kiválasztásához.
- Megszűntek a különálló könyvtárhierarchiák támogatása (amikor a /usr külön van csatolva a gyökértől, vagy a /bin és /usr/bin, /lib és /usr/lib könyvtárak külön vannak). A jövőben a cgroups v1, a System V szolgáltatásfájlok és a SystemdOptions EFI változóinak támogatását is leállítják.
- A 'systemctl switch-root' parancs használata korlátozottá vált, csak az initrd-ben alkalmazható. A gyökérfájl-rendszer normál környezetben való cseréjéhez a 'systemctl soft-reboot'-ot kell használni.
- A systemd-sleep.conf '[Sleep]' szekciójában a SuspendMode, HybridSleepMode, HibernateStat és HybridSleepState paraméterek elavultnak lettek nyilvánítva. Ezek a paraméterek mostantól figyelmen kívül maradnak, és csak az alapértelmezett értékeket vehetik fel.
- A unitokhoz hozzá lett adva a SurviveFinalKillSignal opció, amely lehetővé teszi az utolsó SIGTERM/SIGKILL jel figyelmen kívül hagyását a leállítás során, ami hasznos lehet a unit folyamatban hagyásához a rendszer soft-reboot módban való újraindításakor.
- Hozzá lett adva az NFTSet beállítás, amely lehetővé teszi a cgroup azonosítók használatát a tűzfalszabályok logikájának váltásához.
- Új ConditionSecurity=measured-uki opció került bevezetésre, amely garantálja, hogy a unit csak olyan rendszeren indítható, amelyet érvényesített kernel kép alapján töltöttek be UKI formátumban.
- A systemd-boothoz új B és O billentyűparancsok kerültek hozzáadásra a rendszer újraindítására és leállítására az indító menüből. Bevezetésre került a menu-disabled beállítás is a boot menü megjelenítésének letiltására.
- A systemd-repart eszközhöz új —copy-from opció került hozzáadásra a megadott fájlrendszerképből származó partíciós leírások beszerzésére, —copy-source a CopyFiles paraméter alapkönyvtárának megadásához, —make-ddi=confext, —make-ddi=sysext és —make-ddi=portable különböző típusú DDI generálásához, valamint —tpm2-device-key a lemez egy adott TPM2 nyilvános kulccsal való összekapcsolására.
- A journalctl eszközben az —lines paraméterhez hozzá lett adva a '+N' érték az N legrégebbi bejegyzés kiíratásához.
- A udevadm eszközhöz hozzá lett adva a —json zászló a JSON formátumban történő kiíratáshoz.
- A systemd-analyze, systemd-tmpfiles, systemd-sysusers, systemd-sysctl és systemd-binfmt segédprogramokhoz hozzáadva a „—tldr” opció, amely csak a tényleges konfigurációs paramétereket jeleníti meg, szóközök és megjegyzések nélkül.
- A seccomp alrendszeréhez hozzáadva a LoongArch64 architektúra támogatása. A seccomp használata engedélyezett a rendszerhívások szűrésére nem root felhasználó által futtatott szolgáltatásokban anélkül, hogy aktiválnánk a NoNewPrivileges=yes beállítást.
- A systemd-mount segédprogramhoz hozzáadva a „—tmpfs” opció az új „tmpfs” példány csatolásához.
Forrás: opennet.ru
