Systemd System Manager izdaja 249

Po treh mesecih razvoja je predstavljena izdaja upravljalnika sistema systemd 249. Nova izdaja omogoča definiranje uporabnikov/skupin v formatu JSON, stabilizira protokol dnevnika, poenostavlja organizacijo nalaganja zaporednih diskovnih particij, dodaja možnost povezuje programe BPF s storitvami in izvaja preslikavo identifikatorjev uporabnikov v nameščenih particijah, na voljo je velik del novih omrežnih nastavitev in priložnosti za zagon vsebnikov.

Večje spremembe:

  • Protokol dnevnika je dokumentiran in se lahko uporablja v odjemalcih namesto protokola syslog za lokalno dostavo zapisov dnevnika. Protokol Journal je implementiran že dolgo časa in se že uporablja v nekaterih odjemalskih knjižnicah, vendar je bila njegova uradna podpora objavljena šele zdaj.
  • Userdb in nss-systemd zagotavljata podporo za branje dodatnih uporabniških definicij, ki se nahajajo v imenikih /etc/userdb/, /run/userdb/, /run/host/userdb/ in /usr/lib/userdb/, podanih v formatu JSON. Opozoriti je treba, da bo ta funkcija zagotovila dodaten mehanizem za ustvarjanje uporabnikov v sistemu in mu zagotovila popolno integracijo z NSS in /etc/shadow. Podpora JSON za vnose uporabnikov/skupin bo prav tako omogočila pripenjanje različnih nastavitev upravljanja virov in drugih nastavitev uporabnikom, ki jih pam_systemd in systemd-logind prepoznata.
  • nss-systemd zagotavlja sintezo vnosov uporabnikov/skupin v /etc/shadow z uporabo zgoščenih gesel iz systemd-homed.
  • Implementiran je mehanizem, ki poenostavlja organizacijo posodobitev z diskovnimi particijami, ki se med seboj zamenjujejo (ena particija je aktivna, druga pa rezervna - posodobitev se prekopira na rezervno particijo, nato pa postane aktivna). Če sta na sliki diska dve korenski ali /usr particiji in udev ni zaznal prisotnosti parametra 'root=' ali obdeluje slike diska, določene prek možnosti "--image" v systemd-nspawn in systemd -dissect utilities, se lahko zagonska particija izračuna s primerjavo oznak GPT (ob predpostavki, da oznaka GPT omenja številko različice vsebine particije in bo systemd izbral particijo z novejšimi spremembami).
  • Storitvenim datotekam je dodana nastavitev BPFProgram, s katero lahko organizirate nalaganje programov BPF v jedro in jih upravljate z vezavo na določene storitve systemd.
  • Systemd-fstab-generator in systemd-repart dodajata možnost zagona z diskov, ki imajo samo particijo /usr in nimajo korenske particije (korensko particijo bo generiral systemd-repart med prvim zagonom).
  • V systemd-nspawn je bila možnost "--private-user-chown" nadomeščena z bolj splošno možnostjo "--private-user-ownership", ki lahko sprejme vrednosti "chown" kot ekvivalent "-- private-user-chown", "off", da onemogočite staro nastavitev, "map", da preslikate uporabniške ID-je v nameščenih datotečnih sistemih, in "auto", da izberete "map", če je zahtevana funkcionalnost prisotna v jedru (5.12+) ali se vrnete nazaj na rekurzivni klic "chown" drugače. Z uporabo preslikave lahko datoteke enega uporabnika na nameščeni tuji particiji preslikate v drugega uporabnika v trenutnem sistemu, kar olajša skupno rabo datotek med različnimi uporabniki. V mehanizmu prenosnega domačega imenika systemd-homed bo preslikava omogočila uporabnikom, da svoje domače imenike premaknejo na zunanji medij in jih uporabljajo v različnih računalnikih, ki nimajo enake postavitve ID-ja uporabnika.
  • V systemd-nspawn lahko možnost »--private-user« zdaj uporablja vrednost »identity«, da neposredno odraža uporabniške ID-je pri nastavljanju uporabniškega imenskega prostora, tj. UID 0 in UID 1 v vsebniku se bosta odražala v UID 0 in UID 1 na gostiteljski strani, da se zmanjšajo vektorji napadov (vsebnik bo v svojem imenskem prostoru prejel samo zmogljivosti procesa).
  • Možnost »--bind-user« je bila dodana v systemd-nspawn za posredovanje uporabniškega računa, ki obstaja v gostiteljskem okolju, v vsebnik (domači imenik je nameščen v vsebnik, dodan je vnos uporabnika/skupine in preslikava UID se izvaja med vsebnikom in gostiteljskim okoljem).
  • Dodana podpora za zahtevanje nastavitve gesel uporabnikom systemd-ask-password in systemd-sysusers (passwd.hashed-password. in passwd.plaintext-password. ) z uporabo mehanizma, predstavljenega v systemd 247 za varen prenos občutljivih podatkov z uporabo vmesnih datotek v ločenem imeniku. Privzeto so poverilnice sprejete od procesa s PID1, ki jih prejme na primer od upravitelja upravljanja vsebnika, kar vam omogoča konfiguracijo uporabniškega gesla ob prvem zagonu.
  • systemd-firstboot dodaja podporo za uporabo mehanizma varnega prenosa občutljivih podatkov za poizvedovanje različnih sistemskih parametrov, ki se lahko uporabijo za inicializacijo sistemskih nastavitev ob prvem zagonu slike vsebnika, ki nima potrebnih nastavitev v imeniku /etc.
  • Postopek PID 1 zagotavlja, da sta med zagonom prikazana ime in opis enote. Izhod lahko spremenite prek parametra “StatusUnitFormat=combined” v system.conf ali možnosti ukazne vrstice jedra “systemd.status-unit-format=combined”
  • Možnost "--image" je bila dodana pripomočkom systemd-machine-id-setup in systemd-repart za prenos datoteke z ID-jem stroja na sliko diska ali za povečanje velikosti slike diska.
  • V konfiguracijsko datoteko particije, ki jo uporablja pripomoček systemd-repart, je bil dodan parameter MakeDirectories, ki ga je mogoče uporabiti za ustvarjanje poljubnih imenikov v ustvarjenem datotečnem sistemu, preden se odražajo v tabeli particij (na primer za ustvarjanje imenikov za točke priklopa v korensko particijo, tako da lahko particijo takoj namestite v načinu samo za branje). Za nadzor zastavic GPT v ustvarjenih razdelkih so bili dodani ustrezni parametri Flags, ReadOnly in NoAuto. Parameter CopyBlocks ima vrednost »samodejno« za samodejno izbiro trenutne zagonske particije kot vira pri kopiranju blokov (na primer, ko morate prenesti lastno korensko particijo na nov medij).
  • GPT implementira zastavico »grow-file-system«, ki je podobna možnosti namestitve x-systemd.growfs in omogoča samodejno razširitev velikosti FS do meja blokovne naprave, če je velikost FS manjša od particije. Oznaka je uporabna za datotečne sisteme Ext3, XFS in Btrfs in jo je mogoče uporabiti za samodejno zaznane particije. Zastavica je privzeto omogočena za zapisljive particije, ki so samodejno ustvarjene prek systemd-repart. Možnost GrowFileSystem je bila dodana za konfiguracijo zastavice v systemd-repart.
  • Datoteka /etc/os-release nudi podporo za nove spremenljivke IMAGE_VERSION in IMAGE_ID za določanje različice in ID atomsko posodobljenih slik. Specifikatorja %M in %A sta predlagana za zamenjavo določenih vrednosti v različnih ukazih.
  • Pripomočku portablectl je bil dodan parameter »--extension« za aktiviranje slik prenosnih sistemskih razširitev (na primer, preko njih lahko distribuirate slike z dodatnimi storitvami, integriranimi v korensko particijo).
  • Pripomoček systemd-coredump zagotavlja ekstrakcijo informacij o ID-ju gradnje ELF pri ustvarjanju izpisa jedra procesa, kar je lahko koristno za določanje, kateremu paketu pripada neuspeli proces, če so bile zgrajene informacije o imenu in različici paketov deb ali rpm v datoteke ELF.
  • V udev je bila dodana nova strojna osnova za naprave FireWire (IEEE 1394).
  • V udev so bile v shemo izbire imena omrežnega vmesnika dodane tri spremembe, ki kršijo združljivost za nazaj: nepravilni znaki v imenih vmesnikov so zdaj nadomeščeni z »_«; Imena rež PCI hotplug za sisteme s390 so obdelana v šestnajstiški obliki; Dovoljena je uporaba do 65535 vgrajenih naprav PCI (prej so bile številke nad 16383 blokirane).
  • systemd-resolved doda domeno »home.arpa« na seznam NTA (Negative Trust Anchors), ki je priporočljiva za lokalna domača omrežja, vendar se ne uporablja v DNSSEC.
  • Parameter CPUAffinity zagotavlja razčlenjevanje specifikatorjev »%«.
  • Datotekam .network je bil dodan parameter ManageForeignRoutingPolicyRules, ki ga je mogoče uporabiti za izključitev systemd-networkd iz obdelave pravilnikov usmerjanja tretjih oseb.
  • Parameter RequiredFamilyForOnline je bil dodan datotekam ».network« za ugotavljanje prisotnosti naslova IPv4 ali IPv6 kot znaka, da je omrežni vmesnik v stanju »online«. Networkctl zagotavlja prikaz stanja »online« za vsako povezavo.
  • Dodan parameter OutgoingInterface v datoteke .network za definiranje odhodnih vmesnikov pri konfiguriranju omrežnih mostov.
  • Datotekam ».network« je bil dodan parameter skupine, ki vam omogoča, da konfigurirate skupino Multipath za vnose v razdelku »[NextHop]«.
  • Dodani možnosti »-4« in »-6« v systemd-network-wait-online za omejitev čakanja na povezavo samo na IPv4 ali IPv6.
  • V nastavitve strežnika DHCP je bil dodan parameter RelayTarget, ki preklopi strežnik v način DHCP Ralay. Za dodatno konfiguracijo releja DHCP sta na voljo možnosti RelayAgentCircuitId in RelayAgentRemoteId.
  • Strežniku DHCP je bil dodan parameter ServerAddress, ki vam omogoča eksplicitno nastavitev naslova IP strežnika (sicer se naslov izbere samodejno).
  • Strežnik DHCP implementira razdelek [DHCPServerStaticLease], ki vam omogoča konfiguracijo vezav statičnih naslovov (DHCP leases), ki določajo fiksne povezave IP z naslovi MAC in obratno.
  • Nastavitev RestrictAddressFamilies podpira vrednost »none«, kar pomeni, da storitev ne bo imela dostopa do vtičnic katere koli družine naslovov.
  • V datotekah ».network« v razdelkih [Address], [DHCPv6PrefixDelegation] in [IPv6Prefix] je implementirana podpora za nastavitev RouteMetric, ki vam omogoča, da določite metriko za predpono poti, ustvarjeno za navedeni naslov.
  • nss-myhostname in systemd-resolved zagotavljata sintezo DNS zapisov z naslovi za gostitelje s posebnim imenom “_outbound”, za katere se vedno izda lokalni IP, izbran v skladu s privzetimi potmi, ki se uporabljajo za odhodne povezave.
  • V datotekah .network je v razdelku »[DHCPv4]« dodana privzeta aktivna nastavitev RoutesToNTP, ki zahteva dodajanje ločene poti prek trenutnega omrežnega vmesnika za dostop do naslova strežnika NTP, pridobljenega za ta vmesnik z uporabo DHCP (podobno DNS , vam nastavitev omogoča, da zagotovite, da bo promet do strežnika NTP usmerjen prek vmesnika, prek katerega je bil ta naslov prejet).
  • Dodani nastavitvi SocketBindAllow in SocketBindDeny za nadzor dostopa do vtičnic, povezanih s trenutno storitvijo.
  • Za datoteke enot je bila implementirana pogojna nastavitev, imenovana ConditionFirmware, ki vam omogoča ustvarjanje preverjanj, ki ocenjujejo funkcije vdelane programske opreme, kot je delo v sistemih UEFI in device.tree, ter preverjanje združljivosti z določenimi zmožnostmi drevesa naprav.
  • Implementirana možnost ConditionOSRelease za preverjanje polj v datoteki /etc/os-release. Pri določanju pogojev za preverjanje vrednosti polja so sprejemljivi operatorji “=”, “!=”, “<“, “<=”, “>=”, “>”.
  • V pripomočku hostnamectl so ukazi, kot sta »get-xyz« in »set-xyz«, oproščeni predpon »get« in »set«, na primer namesto »hostnamectl get-hostname« in »hostnamectl »set-hostname« lahko uporabite ukaz “hostnamectl hostname” ”, dodelitev vrednosti v katerem se določi z navedbo dodatnega argumenta (“hostnamectl hostname value”). Podpora za starejše ukaze je bila ohranjena, da se zagotovi združljivost.
  • Pripomoček systemd-detect-virt in nastavitev ConditionVirtualization zagotavljata pravilno identifikacijo okolij Amazon EC2.
  • Nastavitev LogLevelMax v datotekah enote zdaj ne velja le za sporočila dnevnika, ki jih ustvari storitev, ampak tudi za sporočila procesa PID 1, ki omenjajo storitev.
  • Zagotovljena je možnost vključitve podatkov SBAT (UEFI Secure Boot Advanced Targeting) v datoteke sistemskega zagona EFI PE.
  • /etc/crypttab implementira novi možnosti "headless" in "password-echo" - prva vam omogoča, da preskočite vse operacije, povezane z interaktivnim pozivanjem uporabnika k vnosu gesel in kode PIN, druga pa vam omogoča, da konfigurirate metodo za prikaz vnosa gesla (ne prikaži ničesar, prikaži znak za znakom in prikaži zvezdice). Za podobne namene je bila v systemd-ask-password dodana možnost »--echo«.
  • systemd-cryptenroll, systemd-cryptsetup in systemd-homed imajo razširjeno podporo za odklepanje šifriranih particij LUKS2 z uporabo žetonov FIDO2. Dodane nove možnosti »--fido2-with-user-presence«, »--fido2-with-user-verification« in »-fido2-with-client-pin« za nadzor preverjanja fizične prisotnosti uporabnika, preverjanja in potrebe po vnosu kodo PIN.
  • Dodane možnosti »--user«, »--system«, »--merge« in »--file« v systemd-journal-gatewayd, podobne možnostim journalctl.
  • Poleg neposrednih odvisnosti med enotami, določenimi prek parametrov OnFailure in Slice, je bila dodana podpora za implicitne inverzne odvisnosti OnFailureOf in SliceOf, kar je lahko uporabno na primer za določanje vseh enot, vključenih v rezino.
  • Dodane nove vrste odvisnosti med enotami: OnSuccess in OnSuccessOf (nasprotno od OnFailure, poklicano po uspešnem zaključku); PropagatesStopTo in StopPropagatedFrom (omogočajo prenos dogodka zaustavitve enote na drugo enoto); Podpira in podpira (alternativa ponovnemu zagonu).
  • Pripomoček systemd-ask-password ima zdaj možnost »--emoji« za nadzor videza simbola ključavnice (🔐) v vrstici za vnos gesla.
  • Dodana dokumentacija o izvorni drevesni strukturi systemd.
  • Za enote je bila dodana lastnost MemoryAvailable, ki prikazuje, koliko pomnilnika je na voljo enoti, preden doseže mejo, nastavljeno s parametri MemoryMax, MemoryHigh ali MemoryAvailable.

Vir: opennet.ru

Dodaj komentar