Pas pesë muaj zhvillimi, është prezantuar lëshimi i menaxherit sistematik systemd 252. Ndryshimi kyç në versionin e ri ishte integrimi i mbështetjes për procesin e avancuar të ngarkimit, i cili lejon verifikimin përmes nënshkrimeve digjitale jo vetëm të bërthamës dhe ngarkuesit, por edhe të komponentëve të mjedisit themelor të sistemit.
Metoda e propozuar përfshin përdorimin e një imazhi të unifikuar të bërthamës UKI (Imazhi i Bërthamës së Unifikuar) gjatë ngarkimit, i cili kombinon një përpunues për ngarkimin e bërthamës nga UEFI (UEFI boot stub), imazhin e bërthamës Linux dhe mjedisin sistemor të ngarkuar në memorie initrd, i cili përdoret për inicializimin fillestar në fazën para montimit të sistemit të skedarëve. Imazhi UKI rregullohet si një skedar ekzekutiv në formatin PE, i cili mund të ngarkohet me ndihmën e ngarkuesve tradicionalë ose të thirret drejtpërdrejt nga firmware UEFI. Kur thirret nga UEFI, ofrohet mundësia e verifikimit të integritetit dhe besueshmërisë përmes nënshkrimit digjital jo vetëm të bërthamës, por edhe të përmbajtjes initrd.
PĂ«r llogaritjen e parametrave tĂ« regjistrave TPM PCR (Regjistri i Konfigurimit tĂ« PlatformĂ«s sĂ« Modulit tĂ« BesueshĂ«m), tĂ« pĂ«rdorur pĂ«r kontrollin e integritetit dhe formimin e nĂ«nshkrimit digjital tĂ« imazhit UKI, Ă«shtĂ« pĂ«rfshirĂ« njĂ« utilitare e re systemd-measure. ĂelĂ«si publik i pĂ«rdorur nĂ« nĂ«nshkrim dhe informacioni shoqĂ«rues mbi PCR mund tĂ« inkorporohet drejtpĂ«rdrejt nĂ« imazhin ngarkues UKI (çelĂ«si dhe nĂ«nshkrimi ruajnĂ« nĂ« njĂ« skedar nĂ« formatin PE nĂ« fushat '.pcrsig' dhe '.pcrkey') dhe mund tĂ« nxirret prej tij nga utilitarĂ« tĂ« jashtĂ«m ose tĂ« brendshĂ«m.
Po ashtu, për të përdorur këtë informacion, janë adaptuar utilitarët systemd-cryptsetup, systemd-cryptenroll dhe systemd-creds, me anë të të cilëve mund të sigurohet lidhja e ndarjeve të koduara të diskut me bërthamën e nënshkruar digjitalisht (në këtë rast, akses në ndarjen e kodeve ofrohet vetëm nëse imazhi UKI ka kaluar verifikimin përmes nënshkrimit digjital sipas parametrave të vendosur në TPM).
Për më tepër, është përfshirë utilitarja systemd-pcrphase, që mundëson menaxhimin e lidhjeve të fazave të ndryshme të ngarkimit me parametrat që vendosen në memorien e procesorëve kriptografikë që mbështesin specifikimin TPM 2.0 (për shembull, është e mundur të bëhet çelësi i dekriptimit të ndarjes LUKS2 i disponueshëm vetëm në imazhin initrd dhe të bllokohet accessi në të në fazat më të vonshme të ngarkimit).
Disa ndryshime të tjera:
- Përdorimi i lokalitetit C.UTF-8 është i garantuar si parazgjedhje, nëse nuk është përcaktuar ndonjë lokal tjetër në cilësime.
- ĂshtĂ« realizuar mundĂ«sia pĂ«r tĂ« kryer operacionin e para-konfigurimit tĂ« plotĂ« tĂ« shĂ«rbimeve («systemctl preset») gjatĂ« ngarkesĂ«s sĂ« parĂ«. PĂ«r tĂ« aktivizuar para-konfigurimin gjatĂ« ngarkesĂ«s, kĂ«rkohet ndĂ«rtimi me opsionin «-Dfirst-boot-full-preset», por nĂ« botimet e ardhshme planifikohet qĂ« ajo tĂ« aktivizohet si parazgjedhje.
- Në unit-et e menaxhimit të përdoruesve është angazhuar kontrollori i burimeve CPU, i cili ka siguruar aplikimin e cilësimeve CPUWeight për të gjitha slice-unit-et që përdoren për të ndarë sistemin në pjesë (app.slice, background.slice, session.slice) për izolimin e burimeve mes shërbimeve të ndryshme të përdoruesit që konkurrojnë për burimet CPU. Në CPUWeight gjithashtu është e realizuar mbështetja për vlerën «idle» për aktivizimin e modit përkatës të ofrimit të burimeve.
- Në unit-et e përkohshme («transient») dhe në utilitarin systemd-repart, është lejuar tejkalimi i cilësimeve përmes krijimit të skedarëve drop-in në katalogun /etc/systemd/system/emri.d/.
- PĂ«r imazhet e sistemeve Ă«shtĂ« siguruar vendosja e flamurit tĂ« ndĂ«rprerjes sĂ« mbĂ«shtetjes (âsupport-endedâ), duke e pĂ«rcaktuar kĂ«tĂ« fakt mbi bazĂ«n e vlerĂ«s sĂ« parametrave tĂ« rinj «SUPPORT_END=» nĂ« skedarin /etc/os-release.
- Janë shtuar cilësimet «ConditionCredential=» dhe «AssertCredential=», që mund të përdoren për të injoruar ose për të mbyllur në mënyrë emergjente unit-et kur në sistem mungojnë certifikatat e caktuara.
- Në system.conf dhe user.conf janë shtuar cilësimet «DefaultSmackProcessLabel=» dhe «DefaultDeviceTimeoutSec=» për të përcaktuar nivelin e sigurisë SMACK dhe kohën e pritjes për aktivizimin e unit-it, të aplikuara si parazgjedhje.
- Në cilësimet «ConditionFirmware=» dhe «AssertFirmware=» është shtuar mundësia për të specifikuar fushat e veçanta SMBIOS, për shembuj për të aktivizuar një unit vetëm kur fusha /sys/class/dmi/id/board_name përmban vlerën «Custom Board», mund të specifikohet «ConditionFirmware=smbios-field(board_name = «Custom Board»)».
- Në procesin e inicializimit (PID 1) është shtuar mundësia për importimin e informacioneve të përdoruesve nga fushat SMBIOS (Tipi 11, «OEM vendor strings») përveç përcaktimit të tyre përmes qemu_fwcfg, duke e bërë më të lehtë ofrimin e informacioneve të përdoruesve makinat virtuale dhe duke lejuar shmangien nga mjetet e jashtme, siç janë cloud-init dhe ignition.
- Gjatë mbylljes është ndërruar logjika e çmontimit të sistemeve të virtualizuara të skedave (proc, sys) dhe është siguruar regjistrimi në log i informacionit mbi proceset që bllokojnë çmontimin e skedave.
- Në filtrin e thirrjeve sistemore (SystemCallFilter) lejohet si parazgjedhje qasja në thirrjen sistemore riscv_flush_icache.
- NĂ« bootloader-in sd-boot Ă«shtĂ« shtuar mundĂ«sia pĂ«r ngarkim nĂ« modin e pĂ«rzier, ku bĂ«rthama 64-bit e Linux-it ngarkohet nga firmware 32-bit UEFI. ĂshtĂ« shtuar njĂ« mundĂ«si eksperimentale pĂ«r aplikimin automatik tĂ« çelĂ«save SecureBoot nga skedarĂ«t e gjetur nĂ« ESP (particioni i sistemit EFI).
- NĂ« utilitarin bootctl janĂ« shtuar mundĂ«si tĂ« reja «âall-architectures» pĂ«r instalimin e skedarĂ«ve binarĂ« pĂ«r tĂ« gjitha arkitekturave e EFI, «âroot=» dhe «âimage=» pĂ«r punĂ« me katalogun ose imazhin e diskut, «âinstall-source=» pĂ«r pĂ«rcaktimin e burimit pĂ«r instalim, «âefi-boot-option-description=» pĂ«r menaxhimin e emrave tĂ« regjistrave tĂ« ngarkimit.
- NĂ« utilitarin systemctl Ă«shtĂ« shtuar komanda âlist-automountsâ pĂ«r tĂ« treguar listĂ«n e katalogĂ«ve tĂ« automontuar dhe opsioni «âimage=» pĂ«r ekzekutimin e komandave nĂ« lidhje me imazhin e dhĂ«nĂ« tĂ« diskut. NĂ« komandat âshowâ dhe âstatusâ janĂ« shtuar opsionet «âstate=» dhe «âtype=».
- Në systemd-networkd janë shtuar opsionet «TCPCongestionControlAlgorithm=» për zgjedhjen e algoritmit për kontrollin e ngarkesës TCP, «KeepFileDescriptor=» për ruajtjen e dosjes së skedarëve për ndërfaqet TUN/TAP, «NetLabel=» për vendosjen e etiketave NetLabel, «RapidCommit=» për përshpejtimin e konfigurimit përmes DHCPv6 (RFC 3315). Në parametrin «RouteTable=» lejohet specifikimi i emrave të tabelave të rrugës.
- NĂ« systemd-nspawn lejohet pĂ«rdorimi i rrugĂ«ve relative tĂ« skedarĂ«ve nĂ« opsionet «âbind=» dhe «âoverlay=». NĂ« opsionin «âbind=» Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r parametrin ârootidmapâ pĂ«r tĂ« lidhur identitetin e pĂ«rdoruesit root nĂ« kontejner me pronarin e katalogut tĂ« montuar nĂ« sistemin pritĂ«s.
- Në systemd-resolved është përdorur paketa OpenSSL si backend për enkriptimin si parazgjedhje (mbështetje për gnutls është ruajtur si opsion). Algoritmet e papërkrahura DNSSEC tani trajtohen si të pasigurta, në vend se të kthejnë një gabim (SERVFAIL).
- Në systemd-sysusers, systemd-tmpfiles dhe systemd-sysctl është zbatuar mundësia për të transmetuar cilësime përmes mekanizmit të ruajtjes së akreditiveve.
- NĂ« utilitarin systemd-analyze Ă«shtĂ« shtuar komanda âcompare-versionsâ pĂ«r krahasimin e vargjeve me numrat e versioneve (nĂ« analogji me ârpmdev-vercmpâ dhe âdpkg âcompare-versionsâ). NĂ« komandĂ«n âsystemd-analyze dumpâ Ă«shtĂ« shtuar mundĂ«sia pĂ«r filtrimin e njĂ«sive sipas maskĂ«s.
- Kur zgjedh mode multi-hapikey të gjumit (suspend-then-hibernate, kalimi në gjendjen e gjumit pas modalitetit të pritjes), koha e qëndrimit në modalitetin e pritjes tani përzgjidhet në bazë të parashikimit të kohës së mbetur të punës së brezit autonom. Kalimi i menjëhershëm në gjendjen e gjumit bëhet kur mbetet më pak se 5% e karikimit të baterisë.
- Në 'journalctl' është shtuar një mënyrë e re dalëse «-o short-delta», e cila tregon diferencën e kohës midis mesazheve të ndryshme në regjistrin.
- Në systemd-repart është shtuar mbështetje për krijimin e seksioneve me FS Squashfs dhe seksione për dm-verity, përfshirë ato me nënshkrime digjitale.
- Në systemd-logind është shtuar një cilësim «StopIdleSessionSec=» për të përfunduar sesionin pasiv pas skadimit të një kohezgjatjeje të caktuar.
- NĂ« systemd-cryptenroll Ă«shtĂ« shtuar opsioni «âunlock-key-file=» pĂ«r tĂ« nxjerrĂ« çelĂ«sin e dekryptimit nga njĂ« skedar, nĂ« vend tĂ« output-it tĂ« pyetjes pĂ«r pĂ«rdoruesin.
- ĂshtĂ« siguruar mundĂ«sia e ekzekutimit tĂ« utilitarit systemd-growfs nĂ« mjedise pa udev.
- Në systemd-backlight është përmirësuar mbështetje për sistemet me më shumë karta grafike.
- Licensën për shembujt e kodit të ofruar në dokumentacion është ndryshuar nga CC0 në MIT-0.
Ndryshime që shkelin përputhshmërinë:
- NĂ« kontrollin e numrit tĂ« versionit tĂ« bĂ«rthamĂ«s duke pĂ«rdorur direktivĂ«n ConditionKernelVersion, nĂ« operatorĂ«t â=â dhe â!=â tani aplikohet njĂ« krahasim i thjeshtĂ« i vargjeve, dhe nĂ«se operatori i krahasimit nuk Ă«shtĂ« pĂ«rmendur, mund tĂ« aplikohet pĂ«rputhja pĂ«r glob-maskĂ«n duke pĂ«rdorur simbolet â*â, â?â dhe â[â, â]â. PĂ«r krahasimin e versioneve nĂ« stilin e funksionit stverscmp() duhet tĂ« pĂ«rdoren operatorĂ«t ââ, â=â.
- Etiketa SELinux, e cila aplikohet për kontrollin e qasjes nga fail-i i unit, tani lexohen në fazën e ngarkimit të skedarit, e jo në kohën e kontrollit të qasjes.
- Kushti «ConditionFirstBoot» tani aktivizohet në ngarkimin e parë të sistemit vetëm në fazën e ngarkimit dhe kthehet «false» kur thirren njësit pas përfundimit të ngarkimit.
- Në vitin 2024, në systemd planifikohet të ndërpritet mbështetja për mekanizmin e kufizimit të burimeve cgroup v1, i cili është shpallur i vjetruar në versionin systemd 248. Administratoret rekomandohet të kujdesen në mënyrë proaktive për kalimin në cgroup v2 për shërbimet e lidhura me cgroup v1. Një dallim kyç midis cgroups v2 dhe v1 është përdorimi i një hierarkie të përbashkët cgroups për të gjitha llojet e burimeve, në vend të hierarkive të ndara për shpërndarjen e burimeve CPU, rregullimin e konsumit të memories dhe për hyrjen/daljen. Hierarkitë e ndara çojnë në vështirësi në organizimin e bashkëpunimit midis përpunuesve dhe në shpenzime shtesë të burimeve të bërthamës gjatë zbatimit të rregullave për procesin që përmendet në hierarkitë e ndryshme.
- Në gjysmën e dytë të vitit 2023, planifikohet të ndërpritet mbështetja për hierarkitë e ndara të katalogëve, kur /usr montohet veçmas nga rrënja ose katalogët /bin dhe /usr/bin, /lib dhe /usr/lib janë të ndara.
Burimi: opennet.ru
