systemd 245 galima su nešiojamojo namų katalogo diegimu

Po trijų mėnesių vystymosi pateiktas sistemos tvarkyklės leidimas 245. Naujoje versijoje pridedami nauji komponentai systemd-homed ir systemd-repart, įtrauktas nešiojamųjų vartotojų profilių palaikymas JSON formatu, galimybė apibrėžti vardų erdves systemd-journald ir pridedamas „pidfd“ mechanizmo palaikymas. . Visiškai perdarytas projekto svetainė, kuriame surenkama dauguma turimos dokumentacijos ir siūlomas naujas logotipas.

systemd 245 galima su nešiojamojo namų katalogo diegimu

pagrindinis pokyčiai:

  • Pridėta paslauga systemd-homed, kuri užtikrina nešiojamų namų katalogų valdymą, pateikiamą kaip prijungtą vaizdo failą, kuriame esantys duomenys yra užšifruoti. „Systemd-homed“ leidžia sukurti savarankiškas vartotojų duomenų aplinkas, kurias galima perkelti tarp skirtingų sistemų, nesijaudinant dėl ​​identifikatorių sinchronizavimo ir konfidencialumo. Vartotojo kredencialai yra susieti su namų katalogu, o ne su sistemos nustatymais – naudojamas profilis tokiu formatu, o ne /etc/passwd, /etc/group ir /etc/shadow JSON. Norėdami gauti daugiau informacijos, žr paskutinis skelbimas systemd-homed.
  • Pridėtas „systemd-homed“ papildomas komponentas „userdb” („systemd-userdb“), kuri UNIX/glibc NSS paskyras paverčia JSON įrašais ir suteikia vieningą „Varlink“ API, skirtą užklausoms ir įrašų kartojimui. JSON profilis, susietas su pagrindiniu katalogu, nurodo parametrus, reikalingus vartotojo darbui, įskaitant vartotojo vardą, slaptažodžio maišą, šifravimo raktus, kvotas ir aprūpintus išteklius. Profilis gali būti sertifikuotas skaitmeniniu parašu, saugomu išoriniame Yubikey prieigos rakte. Profiliams tvarkyti siūloma „userdbctl“ programa. JSON profilių palaikymas buvo įtrauktas į įvairius sistemos komponentus, įskaitant systemd-logind ir pam-systemd, leidžiančius nešiojamųjų katalogų naudotojams autentifikuoti, prisijungti, nustatyti aplinkos kintamuosius, sukurti seansą, nustatyti apribojimus ir kt. Tikimasi, kad ateityje sssd sistema galės generuoti JSON profilius su vartotojo nustatymais, saugomais LDAP.
  • Pridėta nauja programa „systemd-repart“, skirta disko skaidinių lentelėms perskirstyti GPT formatu. Perskirstymo struktūra apibrėžiama deklaratyviu pavidalu per failus, kuriuose aprašoma, kurie skaidiniai turėtų arba gali egzistuoti. Kiekvienos įkrovos metu tikroji skaidinių lentelė yra lyginama su šiais failais, po to pridedami trūkstami skaidiniai arba, jei santykinis ar absoliutus dydis, apibrėžtas nustatymuose, nesutampa, padidinamas esamų dydis. Leidžiami tik laipsniški pakeitimai, t.y. ištrinti ir sumažinti dydžio negalima, skaidinius galima tik pridėti ir padidinti.
    Priemonė skirta paleisti iš initrd ir automatiškai aptinka diską, kuriame yra šakninis skaidinys, kuriam nereikia papildomos konfigūracijos, išskyrus failus su pakeitimų apibrėžimu.

    Praktiškai systemd-repart gali būti naudingas operacinės sistemos vaizdams, kurie iš pradžių gali būti pristatomi minimalia forma, o po pirmo įkrovos gali būti išplėsti iki esamo blokinio įrenginio dydžio arba papildyti papildomais skaidiniais (pavyzdžiui, šaknimis). skaidinį galima išplėsti, kad apimtų visą diską arba po pirmo įkrovimo sukurti apsikeitimo skaidinį arba /home). Kitas naudojimas būtų konfigūracijos su dviem besisukančiais skaidiniais – iš pradžių gali būti pateiktas tik pirmasis skaidinys, o antrasis būtų sukurtas pirmą kartą paleidžiant.

  • Dabar galima paleisti kelis systemd-journald egzempliorius, kurių kiekvienas saugo žurnalus savo vardų erdvėje. Be pagrindinio systemd-journald.service, .service kataloge yra šablonas, skirtas sukurti papildomus egzempliorius, susietus su jų vardų erdvėmis naudojant direktyvą „LogNamespace“. Kiekvieną žurnalo vardų sritį aptarnauja atskiras foninis procesas su savo nustatymų ir apribojimų rinkiniu. Siūloma funkcija gali būti naudinga balansuojant apkrovą esant dideliam rąstų kiekiui arba siekiant pagerinti programos izoliaciją. Prie journalctl pridėta parinktis „--namespace“, kad užklausa būtų apribota tik nurodyta vardų erdve.
  • „Systemd-udevd“ ir kiti „systemd“ komponentai papildė alternatyvių pavadinimų tinklo sąsajoms priskyrimo mechanizmo palaikymą, leidžiantį vienai sąsajai vienu metu naudoti kelis pavadinimus. Pavadinimas gali būti iki 128 simbolių (anksčiau tinklo sąsajos pavadinimas buvo ribojamas iki 16 simbolių). Pagal numatytuosius nustatymus systemd-udevd dabar kiekvienai tinklo sąsajai priskiria visus variantų pavadinimus, sugeneruotus pagal palaikomas pavadinimų schemas. Šį elgesį galima pakeisti naudojant naujus AlternativeName ir AlternativeNamesPolicy nustatymus .link failuose. systemd-nspawn įgyvendina alternatyvių pavadinimų generavimą su visu konteinerio pavadinimu veth nuorodoms, sukurtoms pagrindinio kompiuterio pusėje.
  • sd-event.h API prideda Linux branduolio posistemio „pidfd“ palaikymą, kad būtų galima išspręsti pakartotinio PID naudojimo situaciją (pidfd yra susietas su konkrečiu procesu ir nesikeičia, o PID gali būti susietas su kitu procesu po dabartinio proceso su juo susietas išeina iš šio PID). Visi sistemos komponentai, išskyrus PID 1, buvo konvertuoti naudoti pidfds, jei posistemį palaiko dabartinis branduolys.
  • systemd-logind suteikia prieigos patikrinimus virtualaus terminalo keitimo operacijai per PolicyKit. Pagal numatytuosius nustatymus leidimai keisti aktyvų terminalą suteikiami tik tiems vartotojams, kurie bent kartą inicijavo seansą vietiniame virtualiame terminale.
  • Kad būtų lengviau kurti initrd vaizdus naudojant systemd, PID 1 tvarkytuvas dabar nustato, ar naudojamas initrd, ir šiuo atveju automatiškai įkelia initrd.target vietoj default.target. Taikant šį metodą, initrd ir pagrindiniai sistemos vaizdai gali skirtis tik esant /etc/initrd-release failui.
  • Pridėtas naujas branduolio komandinės eilutės parametras – „systemd.cpu_affinity“, atitinkantis CPUAffinity parinktį faile /etc/systemd/system.conf ir leidžiantis sukonfigūruoti procesoriaus giminingumo kaukę PID 1 ir kitiems procesams.
  • Įgalintas SELinux duomenų bazės įkėlimas iš naujo ir PID 1 paleidimas iš naujo naudojant komandas, pvz., „systemctl daemon-reload“.
  • Nustatymas „systemd.show-status=error“ buvo pridėtas prie PID 1 tvarkyklės, kai nustatyta, konsolėje rodomi tik klaidų pranešimai ir reikšmingi vėlavimai įkeliant.
  • systemd-sysusers pridėjo palaikymą kuriant vartotojus, kurių pagrindinės grupės pavadinimas skiriasi nuo vartotojo vardo.
  • systemd-growfs pristato XFS skaidinio išplėtimo palaikymą naudojant x-systemd.growfs prijungimo parinktį /etc/fstab, be anksčiau palaikomo skaidinio išplėtimo naudojant Ext4 ir Btrfs.
  • Prie /etc/crypttab pridėta parinktis x-initrd.attach, kad būtų apibrėžtas šifruotas skaidinys, jau atrakintas initrd etape.
  • Systemd-cryptsetup pridėjo palaikymą (parinktis pkcs11-uri aplanke /etc/crypttab), kad būtų galima atrakinti šifruotus skaidinius naudojant PKCS#11 intelektualiąsias korteles, pavyzdžiui, norint prijungti skaidinio šifravimą prie YubiKeys.
  • Naujos prijungimo parinktys „x-systemd.required-by“ ir „x-systemd.wanted-by“ buvo pridėtos prie /etc/fstab, kad būtų aiškiai sukonfigūruoti vienetai, apibrėžiantys prijungimo operacijas, kurios turi būti iškviečiamos vietoj local-fs.target ir nuotolinio. -fs .target.
  • Pridėta nauja paslaugos smėlio dėžės parinktis – ProtectClock, kuri riboja rašymą į sistemos laikrodį (prieiga blokuojama /dev/rtc, sistemos iškvietimų ir CAP_SYS_TIME/CAP_WAKE_ALARM leidimų lygiu).
  • Pagal specifikaciją Atrandamos pertvaros ir systemd-gpt-auto-generator pridėtas skaidinio aptikimas
    /var ir /var/tmp.

  • Rodant vienetų sąrašą „systemctl list-unit-files“ pasirodė naujas stulpelis, atspindintis įjungimo būseną, siūlomą gamintojo išankstiniuose šio tipo vienetų nustatymuose.
  • Prie „systemctl“ buvo pridėta parinktis „—su priklausomybėmis“, kai įdiegtos komandos, pvz., „systemctl status“ ir „systemctl cat“, parodys ne tik visus atitinkamus vienetus, bet ir vienetus, nuo kurių jie priklauso.
  • Sistemoje systemd-networkd qdisc konfigūracija papildė galimybę konfigūruoti TBF (Žetonų segmento filtras), SFQ (Stochastic Fairness Queuing), CoDel (Controlled-Delay Active Queue Management) ir FQ (Fair Queue) parametrus.
  • systemd-networkd pridėjo IFB tinklo įrenginių palaikymą (Vidutinis funkcinis blokas).
  • „Systemd-networkd“ skiltyje [Route] įdiegia parametrą MultiPathRoute, kad sukonfigūruotų kelių kelių maršrutus.
  • DHCPv4 klientui systemd-networkd buvo pridėta parinktis SendDecline, nurodant, gavus DHCP atsakymą su adresu, atliekama pasikartojančio adreso patikra ir aptikus adreso konfliktą, išduotas adresas atmetamas. Prie DHCPv4 kliento taip pat buvo pridėta parinktis RouteMTUBytes, leidžianti nustatyti maršrutų, sugeneruotų iš IP adresų susiejimo (nuomos), MTU dydį.
  • PrefixRoute nustatymas .tinklo failų skiltyje [Adresas] buvo pasenęs. Jis buvo pakeistas nustatymu „AddPrefixRoute“, kuris turi priešingą reikšmę.
  • Tinklo failuose naujos reikšmės „_dhcp“ palaikymas buvo pridėtas prie „Gateway“ nustatymo skiltyje „[Maršrutas]“, kai nustatyta, pasirenkamas statinis maršrutas, pagrįstas per DHCP sukonfigūruotą šliuzą.
  • Nustatymai buvo pateikti .tinklo failuose, esančiuose skiltyje „[RoutingPolicyRule]“.
    Vartotojas ir SuppressPrefixLength nurodyti šaltinio maršrutą pagal UID diapazonus ir prefikso dydį.

  • „Networkctl“ komanda „status“ suteikia galimybę rodyti žurnalus, susijusius su kiekviena tinklo sąsaja.
  • systemd-networkd-wait-online prideda palaikymą nustatant maksimalų laiką, per kurį reikia laukti, kol sąsaja pradės veikti, ir laukti, kol sąsaja išnyks.
  • Nutrauktas .link ir .network failų apdorojimas su tuščia arba pakomentuota skiltimi „[Match]“.
  • .link ir .network failų skiltyje „[Match]“ buvo pridėtas nustatymas „PermanentMACAddress“, kad būtų galima patikrinti nuolatinį įrenginių MAC adresą, jei naudojamas sugeneruotas atsitiktinis MAC.
  • Skiltis „[TrafficControlQueueingDiscipline]“ .network failuose buvo pervadinta į „[NetworkEmulator]“, o priešdėlis „NetworkEmulator“ pašalintas iš susijusių nustatymų pavadinimų.
  • systemd-resolved DNS-over-TLS prideda SNI tikrinimo palaikymą.

Šaltinis: opennet.ru

Добавить комментарий