systemd sistem menadžer izdanje 248

Nakon četiri mjeseca razvoja, predstavljeno je izdanje sistem menadžera systemd 248. Novo izdanje pruža podršku za slike za proširenje sistemskih direktorija, /etc/veritytab konfiguracijski fajl, systemd-cryptenroll uslužni program, otključavanje LUKS2 pomoću TPM2 čipova i FIDO2 tokeni, pokrenute jedinice u izolovanom prostoru IPC identifikatora, B.A.T.M.A.N protokol za mesh mreže, nftables backend za systemd-nspawn. Systemd-oomd je stabiliziran.

Glavne promjene:

  • Implementiran je koncept sistemskih ekstenzija, koji se mogu koristiti za proširenje hijerarhije direktorija /usr/ i /opt/ i dodavanje dodatnih datoteka u vrijeme izvođenja, čak i ako su navedeni direktoriji montirani samo za čitanje. Kada se montira slika sistemske ekstenzije, njen sadržaj se preklapa na /usr/ i /opt/ hijerarhiji koristeći OverlayFS.

    Predložen je novi uslužni program, systemd-sysext, za povezivanje, prekid veze, pregled i ažuriranje slika sistemskih ekstenzija. Za automatsko povezivanje već instaliranih slika tokom pokretanja, dodat je servis systemd-sysext.service. Dodan parametar "SYSEXT_LEVEL=" u os-release datoteku za određivanje nivoa podržanih sistemskih ekstenzija.

  • Za jedinice je implementirana postavka ExtensionImages, koja se može koristiti za povezivanje slika proširenja sistema sa hijerarhijom prostora imena FS pojedinačnih izolovanih usluga.
  • Dodata /etc/veritytab konfiguracijska datoteka za konfiguraciju provjere podataka na nivou bloka pomoću dm-verity modula. Format datoteke je sličan /etc/crypttab - "section_name device_for_data device_for_hashes check_hash_root options." Dodata systemd.verity.root_options opcija komandne linije kernela za konfigurisanje ponašanja dm-verity za root uređaj.
  • systemd-cryptsetup dodaje mogućnost izdvajanja URI-ja tokena PKCS#11 i šifrovanog ključa iz LUKS2 zaglavlja metapodataka u JSON formatu, omogućavajući da se informacije o otvaranju šifrovanog uređaja integrišu u sam uređaj bez uključivanja eksternih datoteka.
  • systemd-cryptsetup pruža podršku za otključavanje LUKS2 šifrovanih particija pomoću TPM2 čipova i FIDO2 tokena, pored prethodno podržanih PKCS#11 tokena. Učitavanje libfido2 se vrši preko dlopen(), tj. dostupnost se provjerava u hodu, a ne kao zavisnost.
  • Nove opcije "no-write-workqueue" i "no-read-workqueue" su dodane u /etc/crypttab za systemd-cryptsetup kako bi se omogućila sinhrona obrada I/O povezana sa šifriranjem i dešifriranjem.
  • Systemd-repart uslužni program je dodao mogućnost aktiviranja šifriranih particija pomoću TPM2 čipova, na primjer, za kreiranje šifrirane /var particije pri prvom pokretanju.
  • Systemd-cryptenroll uslužni program je dodat za povezivanje TPM2, FIDO2 i PKCS#11 tokena na LUKS particije, kao i za otkopčavanje i pregled tokena, vezanje rezervnih ključeva i postavljanje lozinke za pristup.
  • Dodan je parametar PrivateIPC, koji vam omogućava da konfigurišete datoteku jedinice za pokretanje procesa u izolovanom IPC prostoru sa sopstvenim zasebnim identifikatorima i redom poruka. Za povezivanje jedinice na već kreirani prostor IPC identifikatora, predlaže se opcija IPCNamespacePath.
  • Dodate postavke ExecPaths i NoExecPaths kako bi se omogućila primjena noexec zastavice na određene dijelove sistema datoteka.
  • systemd-networkd dodaje podršku za B.A.T.M.A.N mesh protokol. (“Bolji pristup mobilnom adhoc umrežavanju”), koji vam omogućava da kreirate decentralizovane mreže, u kojima je svaki čvor povezan preko susednih čvorova. Za konfiguraciju, predloženi su odjeljak [BatmanAdvanced] u .netdevu, parametar BatmanAdvanced u .network datotekama i novi tip uređaja “batadv”.
  • Implementacija mehanizma ranog odgovora za malo memorije u sistemu systemd-oomd je stabilizirana. Dodata opcija DefaultMemoryPressureDurationSec za konfiguriranje vremena čekanja da se resurs oslobodi prije nego što utječe na jedinicu. Systemd-oomd koristi podsistem kernela PSI (Pressure Stall Information) i omogućava vam da otkrijete početak kašnjenja zbog nedostatka resursa i selektivno okončate procese koji zahtijevaju velike resurse u fazi kada sistem još nije u kritičnom stanju i ne početi intenzivno rezati keš memoriju i premještati podatke u swap particiju.
  • Dodan parametar komandne linije kernela “root=tmpfs”, koji vam omogućava da montirate root particiju u privremenu memoriju koja se nalazi u RAM-u koristeći Tmpfs.
  • Parametar /etc/crypttab koji specificira ključnu datoteku sada može ukazivati ​​na tipove soketa AF_UNIX i SOCK_STREAM. U ovom slučaju, ključ se mora dati prilikom povezivanja na utičnicu, koja se, na primjer, može koristiti za kreiranje servisa koji dinamički izdaju ključeve.
  • Rezervno ime hosta za korištenje od strane upravitelja sistema i systemd-hostnamed sada se može postaviti na dva načina: preko parametra DEFAULT_HOSTNAME u os-release-u i preko varijable okruženja $SYSTEMD_DEFAULT_HOSTNAME. systemd-hostnamed takođe obrađuje "localhost" u imenu hosta i dodaje mogućnost izvoza imena hosta kao i svojstava "HardwareVendor" i "HardwareModel" preko DBus-a.
  • Blok s izloženim varijablama okruženja sada se može konfigurirati putem nove opcije ManagerEnvironment u system.conf ili user.conf, a ne samo kroz komandnu liniju kernela i postavke datoteke jedinice.
  • U vrijeme kompajliranja, moguće je koristiti fexecve() sistemski poziv za pokretanje procesa umjesto execve() kako bi se smanjilo kašnjenje između provjere sigurnosnog konteksta i njegove primjene.
  • Za datoteke jedinica, dodane su nove uslovne operacije ConditionSecurity=tpm2 i ConditionCPUFeature za provjeru prisutnosti TPM2 uređaja i pojedinačnih CPU mogućnosti (na primjer, ConditionCPUFeature=rdrand se može koristiti za provjeru podržava li procesor RDRAND operaciju).
  • Za dostupne kernele implementirano je automatsko generiranje tablica sistemskih poziva za seccomp filtere.
  • Dodata je mogućnost zamjene novih povezivanja u postojeće prostore imena servisa, bez ponovnog pokretanja servisa. Zamjena se izvodi naredbama 'systemctl bind ...' i 'systemctl mount-image ...'.
  • Dodata podrška za određivanje staza u obliku "truncate:" do postavki StandardOutput i StandardError za brisanje prije upotrebe.
  • Dodata mogućnost uspostavljanja veze sa sesijom određenog korisnika unutar lokalnog kontejnera na sd-bus. Na primjer "systemctl -user -M lennart@ start quux".
  • Sljedeći parametri implementirani su u fajlovima systemd.link u odjeljku [Link]:
    • Promiskuitetno - omogućava vam da prebacite uređaj u "promiskuitetni" način rada za obradu svih mrežnih paketa, uključujući i one koji nisu adresirani na trenutni sistem;
    • TransmitQueues i ReceiveQueues za postavljanje broja TX i RX redova;
    • TransmitQueueLength za postavljanje veličine TX reda; GenericSegmentOffloadMaxBytes i GenericSegmentOffloadMaxSegment za postavljanje ograničenja za korištenje GRO (Generic Receive Offload) tehnologije.
  • Nove postavke su dodane fajlovima systemd.network:
    • [Mreža] RouteTable za odabir tabele rutiranja;
    • [RoutingPolicyRule] Tip za tip rutiranja ("blackhole, "unreachable", "prohibit");
    • [IPv6AcceptRA] RouteDenyList i RouteAllowList za liste dozvoljenih i odbijenih reklama ruta;
    • [DHCPv6] UseAddres da ignorišete adresu koju je izdao DHCP;
    • [DHCPv6PrefixDelegation] ManageTemporaryAddress;
    • ActivationPolicy za definiranje politike koja se odnosi na aktivnost interfejsa (uvijek držite GORE ili DOLJE stanje ili dozvolite korisniku da promijeni stanja pomoću naredbe “ip link set dev”).
  • Dodate opcije [VLAN] Protocol, IngressQOSMaps, EgressQOSMaps i [MACVLAN] BroadcastMulticastQueueLength fajlovima systemd.netdev za konfigurisanje rukovanja VLAN paketima.
  • Zaustavljeno je montiranje /dev/ direktorija u noexec modu jer uzrokuje konflikt kada se koristi izvršna zastavica sa /dev/sgx datotekama. Da biste vratili staro ponašanje, možete koristiti postavku NoExecPaths=/dev.
  • Dozvole datoteke /dev/vsock su promijenjene na 0o666, a datoteke /dev/vhost-vsock i /dev/vhost-net su premještene u kvm grupu.
  • Baza podataka hardverskih ID-ova proširena je USB čitačima otiska prsta koji ispravno podržavaju režim mirovanja.
  • Systemd-resoled dodata podrška za izdavanje odgovora na DNSSEC upite preko stuba razrešivača. Lokalni klijenti mogu sami da izvrše DNSSEC provjeru valjanosti, dok se vanjski klijenti proksiju nepromijenjeni na roditeljski DNS server.
  • Dodata opcija CacheFromLocalhost u resolved.conf, kada je postavljena, systemd-resolved će koristiti keširanje čak i za pozive DNS serveru na 127.0.0.1 (podrazumevano, keširanje takvih zahtjeva je onemogućeno da bi se izbjeglo dvostruko keširanje).
  • systemd-resolved dodaje podršku za RFC-5001 NSID-ove u lokalnom DNS resolveru, omogućavajući klijentima da razlikuju interakcije sa lokalnim razrješačem i drugim DNS serverom.
  • Resolvectl uslužni program implementira mogućnost prikaza informacija o izvoru podataka (lokalni keš, mrežni zahtjev, lokalni odgovor procesora) i korištenje enkripcije prilikom prijenosa podataka. Opcije --cache, --synthesize, --network, --zone, --trust-anchor i --validate su date za kontrolu procesa određivanja imena.
  • systemd-nspawn dodaje podršku za konfigurisanje firewall-a koristeći nftables pored postojeće podrške za iptables. IPMasquerade postavka u systemd-networkd je dodala mogućnost korištenja backenda baziranog na nftables.
  • systemd-localed dodata podrška za pozivanje locale-gena za generiranje nedostajućih lokalizacija.
  • Opcije --pager/-no-pager/-json= dodane su raznim uslužnim programima za omogućavanje/onemogućavanje načina stranica i izlaz u JSON formatu. Dodata mogućnost postavljanja broja boja koje se koriste u terminalu preko SYSTEMD_COLORS varijable okruženja (“16” ili “256”).
  • Izgradnja s odvojenim hijerarhijama direktorija (split / i /usr) i podrškom za cgroup v1 su zastarjeli.
  • Glavna grana u Gitu je preimenovana iz 'master' u 'main'.

izvor: opennet.ru

Dodajte komentar