Pas tre muajsh zhvillimi, menaxheri i sistemit systemd 261 është tani i disponueshëm. Ndryshimet kryesore përfshijnë: përgatitjen për mbështetjen e API-t për verifikimin e moshës, mbështetjen për nënsistemet Kexec Handover dhe Live Update Orchestration për rinisjet pa shtetësi, nënsistemin IMDS (Instance Metadata Service), funksionalitetin për mbrojtjen e nisjes në sisteme pa një TPM (Trusted Platform Module) fizik dhe komponentin systemd-sysinstall me një implementim të instaluesit.
Ndër ndryshimet në versionin e ri:
- ĂshtĂ« shtuar njĂ« komponent i ri, systemd-sysinstall, i cili zbaton njĂ« instalues ââtĂ« thjeshtĂ« tĂ« sistemit operativ qĂ« mund tĂ« menaxhohet nga rreshti i komandĂ«s ose nĂ«pĂ«rmjet njĂ« ndĂ«rfaqeje teksti interaktive. Funksionaliteti i systemd-sysinstall ndĂ«rtohet mbi aftĂ«sitĂ« ekzistuese tĂ« systemd: systemd-repart pĂ«rdoret pĂ«r tĂ« konfiguruar ndarjet e diskut, komanda "bootctl link" pĂ«rdoret pĂ«r tĂ« instaluar kernelin dhe pĂ«r tĂ« gjeneruar menunĂ« e nisjes, komanda "bootctl install" pĂ«rdoret pĂ«r tĂ« instaluar ngarkuesin e nisjes systemd-boot dhe systemd-creds pĂ«rdoret pĂ«r konfigurimin fillestar tĂ« sistemit tĂ« instaluar (pĂ«r shembull, zgjedhja e vendndodhjes dhe paraqitjes sĂ« tastierĂ«s).
- Në përgatitje për zbatimin e kërkesave ligjore për integrimin e sistemit operativ, një fushë birthDate që përmban datën e lindjes së përdoruesit është shtuar në bazën e të dhënave userdb për verifikimin e moshës. Kjo fushë mund të përdoret në xdg-desktop-portal (i zhvilluar për shpërndarjet) dhe shërbimin AccountsService për t'u ofruar aplikacioneve informacion në lidhje me kategorinë e moshës së përdoruesit nëpërmjet ndërfaqes D-Bus "org.freedesktop.AgeVerification1" ose "org.freedesktop.ParentalControls". Opsioni "--birth-date" është shtuar në programin homectl për caktimin e moshës.
- Mbështetja për nënsistemet është shtuar në trajtuesin PID1. Linux- Bërthamat LUO (Orkestrimi i Përditësimeve të Drejtpërdrejta) dhe KHO (Dorëzimi i Kexec), të cilat lejojnë një rinisje të plotë dhe përditësim të bërthamës pa ndërprerë funksionimin ose pa humbur gjendjen e sistemit, pajisjeve ose proceseve. KHO ofron mundësinë për të nisur një bërthamë të re nga një e vjetër pa humbur gjendjen e sistemit, ndërsa LUO zbaton ruajtjen e gjendjes së pajisjes dhe RAM-it dhe siguron vazhdimësinë e operacioneve që lidhen me DMA-në dhe trajtimin e ndërprerjeve.
Në systemd, njësitë e sistemit dhe të përdoruesit kanë aftësinë të ruajnë përshkruesit e skedarëve para se të thërrasin kexec dhe t'i rikthejnë ato pas një rinisjeje të bërthamës nëpërmjet kexec. Njësitë gjithashtu mund të krijojnë seancat e tyre LUO, të cilat ruhen dhe rikthehen gjatë ekzekutimit të kexec. Për të aktivizuar ruajtjen e gjendjes së ruajtjes së përshkruesit të skedarëve, përdorni cilësimin 'FileDescriptorStorePreserve=yes'.
- Nënsistemi systemd-imdsd është implementuar. Ai ofron një API të bazuar në Varlink IPC për programet lokale për të aksesuar shërbimet IMDS (Instance Metadata Service) të ofruara nga ofrues të ndryshëm të cloud-it. IMDS lejon makinat virtuale të marrin informacion në lidhje me mjedisin cloud, siç është konfigurimi i rrjetit, vendndodhja gjeografike e nyjeve, lloji i CPU-së dhe madhësia e ruajtjes. systemd-imdsd ofron si një API të nivelit të ulët për aksesimin e fushave individuale ashtu edhe një ndërfaqe të nivelit të lartë për kërkimin e çelësave standardë të lidhur me çelësat specifikë të platformës. Shërbimi systemd-imds, i cili lejon importimin e fushave IMDS në sistemin lokal të llogarisë, është shtuar për të bashkëvepruar me systemd-imdsd.
Një bazë të dhënash e re, hwdb.d/40-imds.hwdb, është shtuar për të zbuluar platformat cloud bazuar në informacionin SMBIOS dhe për të përcaktuar funksionalitetin IMDS të disponueshëm në nyjen aktuale. Platformat cloud të njohura përfshijnë Amazon EC2, Microsoft Azure, Google Compute Engine, Hetzner, Oracle Cloud, Scaleway, Tencent Cloud, Alibaba ECS dhe Vultr. Trajtuesi systemd-imds-generator është i disponueshëm për zëvendësimin automatik të shërbimit për marrjen e të dhënave nëpërmjet IMDS kur ekzekutohet në një platformë cloud të mbështetur. Mund të krijohen imazhe universale që mbështesin IMDS kur ekzekutohen në mjedise cloud, por mund të funksionojnë edhe pa IMDS.
- systemd-stub zbaton veçorinĂ« "sekret i nisjes", e cila lejon gjenerimin e njĂ« çelĂ«si bazuar nĂ« njĂ« variabĂ«l EFI tĂ« ruajtur nĂ« njĂ« zonĂ« tĂ« paarritshme pĂ«r sistemin operativ dhe tĂ« inicializuar me njĂ« vlerĂ« tĂ« rastĂ«sishme. ĂelĂ«si i kalohet initrd nĂ«pĂ«rmjet skedarit /.extra/boot-secret. Kjo veçori mund tĂ« kĂ«rkohet pĂ«r tĂ« gjeneruar njĂ« çelĂ«s tĂ« rastĂ«sishĂ«m specifik pĂ«r sistemin pĂ«r verifikimin e nisjes ose enkriptimin nĂ« sistemet pa njĂ« TPM (Moduli i PlatformĂ«s sĂ« Besuar) tĂ« harduerit.
- Shërbimi systemd-tpm2-swtpm.service është shtuar për të ekzekutuar emulatorin e çipit swtpm TPM (Emulatori i TPM-së së Softuerit), i cili mund të përdoret për t'u rikthyer automatikisht në një implementim të TPM-së së softuerit për nisje të sigurt në sisteme pa një TPM harduerike. Një TPM softuerike vepron në hapësirën e përdoruesit dhe nuk ofron të njëjtin nivel mbrojtjeje si një TPM harduerike, por në disa situata përdorimi i tij është i justifikuar krahasuar me operimin pa një TPM. Për shembull, një TPM softuerike mund të marrë një çelës enkriptimi të ndarjes duke përdorur funksionalitetin e ri "sekretin e nisjes" dhe të përdorë ESP-në (Ndarja e Sistemit EFI) në disk për të ruajtur gjendjen e tij. Parametri i linjës së komandës së bërthamës systemd.tpm2_software_fallback është futur për aktivizimin automatik të një TPM softuerike.
- Komponenti systemd-sysupdate u deklarua i qëndrueshëm dhe u vendos në /usr/bin/, i projektuar për të zbuluar, shkarkuar dhe instaluar automatikisht përditësimet duke përdorur një mekanizëm atomik për zëvendësimin e ndarjeve, skedarëve ose drejtorive (përdoren dy ndarje/skedarë/drejtori të pavarura, njëra prej të cilave përmban burimin që është duke u ekzekutuar aktualisht, dhe tjetra është vendi ku instalohet përditësimi tjetër, pas së cilës ndarjet/skedarët/drejtoritë shkëmbehen).
- systemd-resolved tani mbështet mbivendosjen ose specifikimin e regjistrave të rinj DNS duke vendosur skedarë JSON në drejtoritë systemd/resolve/static.d/. Ndryshe nga /etc/hosts, këto skedarë të rinj jo vetëm që lejojnë që adresat IP të lidhen me emrat e hosteve, por lejojnë edhe përcaktimin e regjistrave të burimeve DNS përveç "A" dhe "AAAA". Për më tepër, systemd-resolved tani mbështet cilësimet e madhësisë së memories cache DNS: 'DNSCacheSize', 'MulticastDNSCacheSize' dhe 'LLMNRCacheSize'.
- U shtua programi 'storagectl' për inspektimin e pajisjeve të ruajtjes dhe menaxhimin e lidhjes së pajisjeve bllok dhe sistemeve të skedarëve.
- Si pjesë e iniciativës për reduktimin e varësive, libsystemd tani ngarkon në mënyrë dinamike bibliotekat libgnutls, libmicrohttpd, libcurl, libcrypto, libssl, libfdisk dhe libcryptsetup.
duke thirrur dlopen() nĂ« situata ku funksionet e tyre janĂ« realisht tĂ« nevojshme. - Flamuri "--inline" Ă«shtĂ« shtuar nĂ« systemd-tmpfiles, duke lejuar qĂ« direktivat tĂ« vendosen nĂ« rreshtin e komandĂ«s pa krijuar skedarĂ« konfigurimi nĂ« tmpfiles.d/ dhe pa dĂ«rguar cilĂ«sime nĂ«pĂ«rmjet STDIN. NjĂ« lloj i ri direktive, 'k/K', Ă«shtĂ« shtuar pĂ«r vendosjen e aftĂ«sive. ĂshtĂ« shtuar skedari i konfigurimit tmpfiles.d/root.conf, duke vendosur lejet nĂ« 0555 (-r-xr-xr-x) pĂ«r direktorinĂ« rrĂ«njĂ« (/) pĂ«r tĂ« mbrojtur nga lejet e pasakta gjatĂ« krijimit dinamik tĂ« sistemit tĂ« skedarĂ«ve rrĂ«njĂ«.
- Programi bootctl ofron mundësinë për të ruajtur një kopje rezervë të ngarkuesit të nisjes systemd-boot dhe për të regjistruar versionin e vjetër në UEFI si një opsion nisjeje rezervë.
- Systemd-vmspawn tani mbështet nisjen direkte të kernelit pa përdorur firmware UEFI. Opsioni "--firmware-features" është zbatuar për aktivizimin ose çaktivizimin selektiv të veçorive individuale të firmware-it. Modaliteti "--console=headless" është shtuar për nisjen e një makine virtuale pa një konsolë ose ekran. Opsioni "--image-disk-type" është shtuar për zgjedhjen e llojit të ruajtjes së bllokut të përdorur në VM (virtio-blk, virtio-scsi, nvme ose scsi-cd). Opsioni "--coco" (Informatikë Konfidenciale) është shtuar për të aktivizuar enkriptimin e memories së makinës virtuale duke përdorur teknologjinë AMD SEV-SNP.
- Mbështetja për bashkëngjitjen e etiketave arbitrare në sistemin aktual është shtuar në systemd-hostnamed dhe /etc/machine-info duke përdorur parametrin "Etiketa". Këto etiketa mund të përdoren më pas për të aplikuar në mënyrë selektive cilësimet, të validuara përmes shprehjes ConditionMachineTag.
- U shtuan cilësimet EventLoopRateLimitIntervalSec dhe EventLoopRateLimitBurst për të kufizuar shpejtësinë e ciklit të përpunimit të ngjarjeve në PID1 për të liruar burimet e CPU-së në rast të ciklit.
- Menaxheri i shërbimit tani përfshin një cilësim MinimumUptimeSec për caktimin e kohës minimale të funksionimit të sistemit (15 sekonda si parazgjedhje). Nëse një mbyllje ose rinisje fillon para se të ketë kaluar kjo kohë, një vonesë përkatëse shtohet në fazën përfundimtare.
- Janë zbatuar cilësime të reja për njësitë: CPUSetPartition për caktimin e llojit të ndarjes cpuset në cgroup ("root", "izoluar", "member"), RestrictFileSystemAccess për të lejuar vetëm skedarët ekzekutues të verifikuar me nënshkrim dixhital duke përdorur dm-verity të ekzekutohen, dhe CPUPressureWatch/CPUPressureThresholdSec/IOPressureWatch/IOPressureThresholdSec për të marrë njoftime rreth ngarkesës së lartë të CPU-së dhe të I/O-së.
- Lista e metrikave të raportuara nga programi systemd-report është zgjeruar. Për shembull, janë shtuar informacione rreth madhësisë së memories fizike dhe bërthamave aktive të CPU-së, përmbajtjes së fushave SMBIOS dhe /etc/machine-info, mbështetjes së modalitetit Confidential Computing dhe informacionit të prodhuesit të çipit TPM2.
- systemd-oomd zbaton aftësinë për të përcaktuar rregulla për ndërprerjen e proceseve kur sistemi përjeton kushte të ulëta memorieje. Rregullat mund të përcaktohen në direktorinë /etc/systemd/oomd/rules.d/ ose në njësitë e shërbimit duke përdorur direktivën OOMRule.
- systemd-socket-proxy tani mbështet protokollin "PROXY", i cili korrespondon me versionin e parë të protokollit "haproxy".
- systemd-networkd zbaton një backend të ri sd-dhcp-relay për reletë DHCP. Cilësimet në seksionin "[DHCPServer]" - BindToInterface, RelayTarget, RelayAgentCircuitId dhe RelayAgentRemoteId - janë vjetëruar. Në vend të kësaj, përdorni parametrin DHCPRelay në seksionin "[Network]" dhe një seri cilësimesh të reja në seksionin [DHCPRelay] dhe në skedarin networkd.conf. Komanda 'networkctl dhcp-lease INTERFACE' është shtuar për të ruajtur një grumbull të informacionit të lidhjes së adresës IP (DHCP leases).
- Opsioni "--restrict-address-families" është shtuar në programin systemd-nspawn, dhe cilësimi RestrictAddressFamilies është shtuar në skedarët .nspawn për të kufizuar familjet e adresave të soketave të përdorura në kontejnerë. Në versionet e ardhshme, vetëm familjet AF_INET, AF_INET6 dhe AF_UNIX do të lejohen si parazgjedhje.
- Mbështetja për formatin e vjetër të bazës së të dhënave udev (versioni 0.x) është ndërprerë. Përditësimet e menjëhershme nga versionet systemd para lëshimit 247 nuk mbështeten më.
- Kur ndërtohet me bibliotekën C të musl, tani kërkohet të paktën versioni 1.2.6 i musl.
Përveç kësaj, ia vlen të përmendet publikimi i liberated-systemd 261, një degëzim i systemd që heq kodin që mund të përdoret për mbikëqyrjen e përdoruesit. Ndryshimet e këtij publikimi përfundojnë në heqjen e kodit që shton fushën birthDate te userdb, e cila ruan datën e lindjes së përdoruesit, dhe opsionin "--birth-date" te programi homectl për caktimin e moshës.
Burimi: opennet.ru
