A Systemd 258 stabil verziója megérkezett

10/10
A kiadásból több alapvető régi UNIX-mechanizmus (System V runlevel, initctl, /forcefsck, stb.) kikerült, a cgroup v1 végleg elengedésre került, új minimális kernelkövetelményt vezettek be, változott a jogosultságkezelés a pszeudotermináloknál, valamint komoly biztonsági és kriptográfiai átalakítások történtek. Ezek a lépések nem csupán hibajavítások vagy kisebb fejlesztések, hanem mélyen érintik a Linux rendszerek működését és adminisztrációját, ezért azonnali figyelmet és alkalmazkodást igényelnek a disztribúciók és a rendszerüzemeltetők részéről.

A systemd 258-as kiadása mélyreható változásokat hoz: megszűnt a cgroup v1 támogatása, a szoftver innentől egységesen a cgroup v2 hierarchiát használja, és a minimum kernelverzió 5.4-re emelkedett (ajánlott 5.7). Biztonsági okból a pszeudoterminálok jogosultsága 0620-ról 0600-ra változik, így a /dev/tty/pts eszközök alapból „mesg n” módban jönnek létre, míg az „uaccess” ACL-eket immár következetesen a systemd-udevd állítja be, a logind csak „change” eseményekkel lép közbe. A kiadás végleg szakít több régi UNIX-megoldással: kikerült a System V stílusú rendszerállapot-kezelés (initctl, runlevel, telinit, runlevel célok), valamint a /forcefsck, /fastboot és /forcequotacheck fájlos kapcsolók, helyettük kernelparaméterek és hitelesített „credential” beállítások használhatók. A kriptográfiai háttér is modernizálódott, a systemd-resolved és az importd mostantól kizárólag az OpenSSL-t támogatja, és megszűnt a gnutls/gcrypt opció.

A Systemd 258 stabil verziója megérkezett

Finomabb kontroll és nagyobb biztonság a PID1-ben

A PID1 oldalán rengeteg új képesség jelent meg. Ilyen például a PrivateUsers= „full” mód, amely a teljes 32 bites UID-tartományt leképezi, a ProtectHostname= „private” pedig izolált névtérben enged helyi hosztnév-módosítást. A .mount egységek immár hitelesített „credential” adatokat is kaphatnak, a feltételrendszer bővült (például ConditionKernelModuleLoaded= és a generikusabb ConditionVersion=), a szeletek pedig ConcurrencySoftMax/HardMax paraméterekkel szabályozhatják, hány egység futhat/pufferelhető egyszerre. A tmpfs-alapú /dev/shm és /tmp per-felhasználói kvótát kap, a szolgáltatások számára pedig elérhetőek a per-egység állapot-, gyorsítótár- és naplókönyvtár-kvóták (projektkvótán alapulva). A transziens egységek futtatásánál új csavar a „lenient” feladatmód, a RandomizedOffsetSec= időzítő-eltolás, a „|” csővezetéki előtag shellen keresztüli indításhoz, valamint a pidfd-re épített azonosítók, amelyek a PID-újrafelhasználás versenyhelyzeteit hivatottak megszüntetni.

Hardver és hálózat: udev, networkd, resolved kéz a kézben

Az udev/hwdb réteg új tulajdonságokkal bővül, a jogosultságkezelés és a diagnosztika egyszerűbbé vált: kibővített „test”, JSON/trace módok, új beépített modulok (például factory_reset, dissect_image), és több eszköztípus kap automatikus, nem privilégizált hozzáférést (ADB/fastboot). A networkd finomabb DHCPv4/BOOTP és DHCPv6 SIP támogatást nyúlt, új VLAN/bridge képességeket, HSR/SRP és MPLS opciókat, valamint gyorsabb IPv4 DAD időzítést, míg a resolved okosabban kezeli az A/AAAA párhuzamos lekérdezéseket, bővített biztonsági és zónadelegációs modellben működik, sőt a „wait-online” DNS-készenlétet is meg tudja várni. Mindezek együtt tisztább hálózati életciklust és kevesebb rejtett időzítési hibát ígérnek komplex környezetekben.

Indítás, UKI és TPM: erősebb lánc, rugalmasabb képek

A rendszerindítási lánc átfogóan frissül. A systemd-boot és a systemd-stub a Unified Kernel Image köré szerveződik, támogatva hálózatról betöltött UKI-kat, bővített CHID/EDID illesztést és firmware-beágyazást, míg a bootctl finomhangolható hibakezeléssel és változókezeléssel könnyíti a beállítást. A TPM-integráció mélyebb: szigorúbb PCR-mérések, új pcrlock ellenőrzések és egy „tpm2-clear” szolgáltatás segítik a megbízható indítást és a tárolt kulcsok védelmét. A factory reset mostantól kiemelt, önálló funkcióként érhető el külön eszközzel, célokkal és kernelparaméterrel, a repart/gpt-auto/dissect hármas pedig automatikus Verity-hash felismeréssel, ESP/XBOOTLDR méretküszöbökkel, „validatefs” attribútumokkal és kényelmes letöltés-/csatolás-automatizációval.

Felhasználói tér: homed, userdb, nspawn és kapcsolódó komponensek

A systemd-homed és a userdb új fogalmakkal gazdagodik: alias nevek, realm-os hivatkozások, per-user /tmp és /dev/shm kvóták, valamint „home area” almappák a külön környezetekhez. A homectl kulcskezelést, dry runt, adopt/register útvonalakat és aláírás-migrációt kínál, megkönnyítve a hordozható home-ok életciklusát. A konténer- és VM-eszköztár (nspawn, vmspawn) jobb jogosultság-kérdezéssel, felhasználói névtér-kezeléssel, unprivilegizált hálózattal és kényelmi parancsokkal bővül; a machines/machined oldalán varlink API és pidfd-azonosítás javítja a felügyeletet. A naplózás/journald/varlink eszköztár finomodik, a „follow” és szinkronizáció kiszámíthatóbb, a kérés-válasz csatornák pedig script-barátabbak lettek.

Erősen javasolt a frissítés

Ajánlott a frissítést megelőzően ellenőrizni a udev szabályokban az „uaccess” használatát, a TTY jogosultságokra építő munkafolyamatokat, a System V maradványokat, illetve a hálózati stack iptables-függéseit. A kernel- és könyvtárminimumok szigorodása miatt célszerű a build- és CI-környezeteket is felkészíteni. Aki UKI-t, TPM-et, initrd-automatizmust vagy képalapú rendszert használ, sok friss kényelmi és biztonsági funkciót kap – cserébe érdemes végigmenni a dokumentáción és a változáslistán, mert a 258 már egyértelműen a modern, egységesített rendszerindítás és szolgáltatás-szabályozás felé tolja az ökoszisztémát.

Elavulttá váló funkciók a következő 259-es főverzióban

A fejlesztők előre jelezték, hogy a következő főverzióban végleg eltávolításra kerülnek a System V init szkriptekhez kapcsolódó támogatások, a libiptc-s „legacy” iptables-útvonal a networkd/nspawn oldalán, valamint a /run/lock örökség-könyvtár. Emelkedik majd több külső komponens minimális verziókövetelménye is (például kernel ≥5.10, glibc ≥2.34, OpenSSL ≥3.0), ezért érdemes időben felkészülniük a felhasználóknak, különös tekintettel akik szerverinfrastruktúrát üzemeltetnek. Aki kifinomult udev szabályokra, hálózati stackre vagy initrd-szkriptekre támaszkodik, annak még inkább ajánlott a változások áttekintése, mert a 259-től kezdve ezek a funkciótisztítások már nem csupán ajánlások lesznek, hanem kemény követelmények.

Gábor a Pingvinbázis alapítója és főszerkesztője, több mint 20 éves tapasztalattal rendelkezik a Linux rendszerek és az Open Source szoftverek területén. Jártas a Python, és a PHP nyelvben, valamint a BASH scriptelésben is.