PĂ€rast nelja kuu arendust on vĂ€lja antud sĂŒsteemi manageri systemd 248 versioon. Uues vĂ€ljaandes on tagatud toe olemasolu sĂŒsteemide kataloogide laiendamise piltide jaoks, konfigureerimisfaili /etc/veritytab, utiliidi systemd-cryptenroll, LUKS2 lukustamise TPM2 kiipide ja FIDO2 tokenite abil, ĂŒksuste kĂ€ivitamine IPC identifikaatorite isoleeritud ruumis, B.A.T.M.A.N. protokoll mesh-vĂ”rkude jaoks, ning nftables tagumine sĂŒsteemile systemd-nspawn. Stabiliseeritud on systemd-oomd.
Peamised muudatused:
- On rakendatud sĂŒsteemi laiendamise piltide (System Extension) kontseptsioon, mida saab kasutada kataloogide hierarhia /usr/ ja /opt/ laiendamiseks ning lisafailide lisamiseks töö ajal, isegi kui nimetatud kataloogid on monteeritud ainult lugemisreĆŸiimis. Kui sĂŒsteemi laiendamise pilt on ĂŒhendatud, overlay-ib selle sisu /usr/ ja /opt/ hierarhiale OverlayFS abil.
SĂŒsteemi laiendamise piltide ĂŒhendamiseks, lahtiĂŒhendamiseks, vaatamiseks ja vĂ€rskendamiseks on pakutud uus utiliit systemd-sysext. Juba installitud piltide automaatseks ĂŒhendamiseks kĂ€ivitamise ajal on lisatud teenus systemd-sysext.service. Faili os-release on lisatud parameeter "SYSEXT_LEVEL=" sĂŒsteemi toetavate laienduste taseme mÀÀramiseks.
- Ăksustele on rakendatud seadistus ExtensionImages, mida saab kasutada sĂŒsteemi laiendamise piltide sidumiseks isolatsiooni all olevate teenuste FS nimetuste hierarhiasse.
- Lisatud on konfigureerimisfail /etc/veritytab, et seadistada andmete kontrollimist plokkide tasemel dm-verity mooduli abil. Faili formaat on sarnane /etc/crypttab-ga â "jaotus_nimi seade_andmete jaoks seade_hĂ€kkide jaoks juure_kontrolli_hĂ€kk valikud". Dm-verity kĂ€itumise seadistamiseks juureseadmest on lisatud parameeter kernel-command line systemd.verity.root_options.
- Systemd-cryptsetup-s on lisatud vĂ”imalus vĂ€lja vĂ”tta URI token PKCS#11 ja krĂŒpteeritud vĂ”tme LUKS2 metaandmete pealkirjast JSON vormingus, mis vĂ”imaldab integreerida krĂŒpteeritud seadme avamise teavet seadme endasse ilma vĂ€liste failide kaasamiseta.
- Systemd-cryptsetup-s on tagatud LUKS2 krĂŒpteeritud jaotuste lukustamise toetus TPM2 kiipide ja FIDO2 tokenite abil, lisaks eelnevalt toetatud tokenitele PKCS#11. Libfido2 laadimine toimub lĂ€bi dlopen(), st olemasolu kontrollitakse reaalajas, mitte jĂ€igalt seotuna.
- Fail /etc/crypttab for systemd-cryptsetup on lisatud uued valikud «no-write-workqueue» ja «no-read-workqueue» sĂŒnkroonselt krĂŒpteerimise ja dekodeerimisega seotud I/O töötlemiseks.
- Systemd-repart tööriistale on lisatud vĂ”imalus aktiveerida krĂŒpteeritud jaotised TPM2 kiipide abil, nĂ€iteks krĂŒpteeritud jaotise loomine /var esmakordsel kĂ€ivitamisel.
- Lisatud on tool systemd-cryptenroll, mis vÔimaldab siduda TPM2, FIDO2 ja PKCS#11 tokeneid LUKS jaotistega, samuti nende vabastamist ja vaatamist, varuklahvide sidumist ja juurdepÀÀsuks parooli mÀÀramist.
- Lisatud on PrivateIPC parameeter, mis vĂ”imaldab unit-failis seadistada protsesside kĂ€ivitamise eraldi IPC ruumis oma identifikaatorite ja sĂ”numijĂ€rjekondadega. Unit-i ĂŒhendamiseks juba loodud IPC identifikaatoriruumiga on ette nĂ€htud IPCNamespacePath valik.
- Lisatud on ExecPaths ja NoExecPaths seadistused, mis vĂ”imaldavad rakendada noexec lippu teatud failisĂŒsteemi osadele.
- Systemd-networkd-sse on lisatud B.A.T.M.A.N. (Better Approach To Mobile Adhoc Networking) mesh-protokolli tugi, mis vĂ”imaldab luua detsentraliseeritud vĂ”rke, kus iga sĂ”lm on seotud naabersĂ”lmede kaudu. Seadistamiseks on ette nĂ€htud [BatmanAdvanced] sektsioon .netdev-s, BatmanAdvanced parameeter .network failides ja uus seadme tĂŒĂŒp «batadv».
- Stabiliseeritud on varajase reageerimise mehhanismi rakendamine sĂŒsteemi mĂ€lu puudujÀÀgi osas systemd-oomd. Lisatud on DefaultMemoryPressureDurationSec valik, et seadistada ressursi vabastamise ooteaega enne unit-ile mĂ”ju avaldamist. Systemd-oomd kasutab kerneli PSI (Pressure Stall Information) alam sĂŒsteemi ja vĂ”imaldab tuvastada ressursipuudusest tingitud viivituste tekkimist, lĂ”petades valikuliselt ressursimahukate protsesside töö faasis, kus sĂŒsteem ei ole veel kriitilises seisundis ja ei hakka intensiivselt vahemĂ€lu kĂ€rpima ega andmeid vahetusfaili suunama.
- Lisatud on kerneli kĂ€surea parameeter â «root=tmpfs», mis vĂ”imaldab mountida juurjaotise ajutisse mĂ€llu, kasutades Tmpfs-i.
- Parameeter /etc/crypttab, mis mÀÀratleb vĂ”tme faili, vĂ”ib nĂŒĂŒd viidata AF_UNIX ja SOCK_STREAM tĂŒĂŒbi soketidele. Sellisel juhul peab vĂ”ti olema antud soketiga ĂŒhendamisel, mida saab nĂ€iteks kasutada teenuste loomiseks, mis dĂŒnaamiliselt vĂ”tmeid edastavad.
- Varu hostinimi (fallback), mida kasutada sĂŒsteemihalduri ja systemd-hostnamed'i jaoks, saab nĂŒĂŒd seadistada kahel viisil: os-release'i DEFAULT_HOSTNAME parameetri kaudu ja keskkonnamuutuja $SYSTEMD_DEFAULT_HOSTNAME kaudu. Systemd-hostnamed'is on samuti rakendatud 'localhost' mÀÀratud hostinime töötlemine ning lisatud on vĂ”imalus eksportida hostinime, samuti 'HardwareVendor' ja 'HardwareModel' atribuute DBus'i kaudu.
- Keskkonnamuutujate plokk on nĂŒĂŒd seadistatav uue ManagerEnvironment valiku kaudu system.conf vĂ”i user.conf failis, mitte ainult kerneli kĂ€surea ja unit-faili seadistuste kaudu.
- Kompileerimise etapis on ette nĂ€htud vĂ”imalus kasutada protsesside kĂ€ivitamiseks sĂŒsteemikĂ”nede fexecve() asemel execve(), et vĂ€hendada viivitust turvakonteksti kontrollimise ja rakendamise vahel.
- Unit-failide jaoks on lisatud uued tingimuslikud operatsioonid ConditionSecurity=tpm2 ja ConditionCPUFeature, et kontrollida TPM2 seadmete ja spetsiifiliste CPU omaduste olemasolu (nÀiteks ConditionCPUFeature=rdrand saab kasutada, et kontrollida, kas protsessor toetab RDRAND operatsiooni).
- Saadaval olevate kernelite jaoks on rakendatud automaatne sĂŒsteemikĂ”nede tabelite genereerimine seccompi filtrite jaoks.
- Kasutajate teenuste olemasolevatesse mointimisruumidesse (mount namespace) on lisatud uute sidemete (bind mounts) asendamise vÔimalus, ilma et teenuseid uuesti kÀivitataks. Asendamine toimub kÀskudega 'systemctl bind ...' ja 'systemctl mount-image ...'.
- StandardOutput ja StandardError seadistustesse on lisatud tugi teed mÀÀramiseks vormis 'truncate:' enne kasutamist tĂŒhjendamiseks.
- Sd-bus'i on lisatud vĂ”imalus luua ĂŒhendus mÀÀratud kasutaja seansiga kohaliku konteineri sees. NĂ€iteks 'systemctl âuser -M lennart@ start quux'.
- Systemd.link failides on jaotises [Link] rakendatud parameetrid:
- Promiscuous â vĂ”imaldab seadmel minna "promiscuous" reĆŸiimi, et töödelda kĂ”iki vĂ”rgupakette, sealhulgas neid, mis ei ole suunatud antud sĂŒsteemile;
- TransmitQueues ja ReceiveQueues TX ja RX jÀrjekordade arvu seadistamiseks;
- TransmitQueueLength TX jÀrjekorra suuruse seadistamiseks; GenericSegmentOffloadMaxBytes ja GenericSegmentOffloadMaxSegment GRO (Generic Receive Offload) tehnoloogia rakendamise piirangute seadmiseks.
- Systemd.network failidesse on lisatud uued seadistused:
- [Network] RouteTable marsruuditabeli valimiseks;
- [RoutingPolicyRule] Type marsruutimisreegle tĂŒĂŒbi jaoks ('blackhole', 'unreachable', 'prohibit');
- [IPv6AcceptRA] RouteDenyList ja RouteAllowList lubatud ja keelatud marsruutide kuulutuste loetlemiseks;
- [DHCPv6] UseAddres DHCP aadressi ignoreerimiseks;
- [DHCPv6PrefixDelegation] ManageTemporaryAddress;
- ActivationPolicy liidestuse aktiivsusreegli mÀÀramiseks (alati hoida UP vĂ”i DOWN olekus vĂ”i lubada kasutajal olekute muutmine kĂ€suga âip link set devâ).
- Failides systemd.netdev on lisatud valikud [VLAN] Protocol, IngressQOSMaps, EgressQOSMaps ja [MACVLAN] BroadcastMulticastQueueLength VLAN pakettide töötlemise seadistamiseks.
- Katalooge \/dev\/ enam ei monteerita noexec reĆŸiimis, kuna see pĂ”hjustab konflikti tĂ€idetava flagi kasutamisel failide \/dev\/sgx juures. Vanade kĂ€itumise taastamiseks saab kasutada seadistust NoExecPaths=\/dev.
- Faili \ /dev\/vsock Ă”igused on muutunud 0o666-ks ning failid \/dev\/vhost-vsock ja \/dev\/vhost-net on viidud rĂŒhma. kvm.
- Riistvara identifikaatorite baas on laiendatud USB-seadmetega, mis toetavad sĂ”rmejĂ€lgede lugemist ja korralikku ĂŒlesehitamist une olekusse.
- systemd-resolved on lisatud tugi DNSSEC pÀringute vastuste vÀljastamiseks stub-resolver kaudu. Kohalikud kliendid saavad ise teha DNSSEC-i valideerimist, samas kui vÀlised pÀringud suunatakse muutumatul kujul vanem DNS-serverisse.
- resolved.conf failile on lisatud CacheFromLocalhost valik, mille aktiveerimisel kasutab systemd-resolved vahemÀlu isegi aadressil 127.0.0.1 tehtud pÀringute puhul (vahemÀlestamine on vaikimisi kehtestatud sarnaste pÀringute jaoks, et vÀltida topeltvahemÀlu).
- systemd-resolved on lisatud RFC-5001 NSID tugi kohalikus DNS-resolveris, mis vÔimaldab klientidel eristada kohaliku resolveri ja muu vahelise suhtluse. serverilt DNS.
- resolvectl utiliidis on rakendatud vĂ”imalus esitada teavet andmete allika (kohalik vahemĂ€lu, vĂ”rgupĂ€ring, kohaliku kĂ€sitleja vastus) ja andmete edastamise krĂŒpteerimise rakendamise kohta. Nime mÀÀratlemise protsessi juhtimiseks on pakutud valikud âcache, âsynthesize, ânetwork, âzone, âtrust-anchor ja âvalidate.
- systemd-nspawnis on lisatud tugi tulemĂŒĂŒride seadistamiseks nftablesi abi kaudu, lisaks olemasolevale toele iptablesile. systemd-networkd IPMasquerade seadistusse on lisatud vĂ”imalus kasutada nftables pĂ”hist tagasivoolu.
- systemd-localed on lisatud tugi locale-gen kÀsu vÀljakutsumiseks puuduvate locale'de genereerimiseks.
- Erinevates utiliitides on lisatud valikud âpager/âno-pager/âjson= lehevaatamise reĆŸiimi lubamiseks vĂ”i keelamiseks ning JSON formaadis vĂ€ljundi saamiseks. Lisatud on vĂ”imalus seadistada terminalis kasutatavate vĂ€rvide arvu keskkonnamuutujaga SYSTEMD_COLORS («16» vĂ”i «256»).
- KĂ€ivitus on kuulutatud aegunuks, kui on eraldi kataloogihierarhiad (eraldi / ja /usr) ja cgroup v1 toetus.
- Git peaharu on ĂŒmber nimetatud âmasterâ nimeks âmainâ.
Allikas: opennet.ru
