systemd system manager release 248

Pagkatapos ng apat na buwan ng pag-develop, ipinakita ang release ng system manager systemd 248. Ang bagong release ay nagbibigay ng suporta para sa mga imahe para sa pagpapalawak ng mga direktoryo ng system, ang file ng pagsasaayos ng /etc/veritytab, ang systemd-cryptenroll utility, pag-unlock ng LUKS2 gamit ang TPM2 chips at FIDO2 mga token, nagpapatakbo ng mga unit sa isang nakahiwalay na espasyo ng pagkakakilanlan ng IPC, protocol ng BATMAN para sa mga network ng mesh, backend ng nftable para sa systemd-nspawn. Systemd-oomd ay na-stabilize.

Pangunahing pagbabago:

  • Ang konsepto ng System Extension na mga imahe ay ipinatupad, na maaaring magamit upang palawigin ang hierarchy ng /usr/ at /opt/ na mga direktoryo, at magdagdag ng mga karagdagang file sa runtime, kahit na ang mga tinukoy na direktoryo ay naka-mount na read-only. Kapag ang isang imahe ng extension ng system ay naka-mount, ang mga nilalaman nito ay na-overlay sa /usr/ at /opt/ hierarchy gamit ang OverlayFS.

    Ang isang bagong utility, systemd-sysext, ay iminungkahi upang kumonekta, idiskonekta, tingnan at i-update ang mga larawan ng mga extension ng system. Upang awtomatikong ikonekta ang mga naka-install na larawan sa panahon ng boot, idinagdag ang serbisyo ng systemd-sysext.service. Idinagdag ang parameter na "SYSEXT_LEVEL=" sa os-release file upang matukoy ang antas ng mga sinusuportahang extension ng system.

  • Para sa mga unit, ipinatupad ang setting ng ExtensionImages, na maaaring magamit upang i-link ang mga larawan ng extension ng system sa hierarchy ng namespace ng FS ng mga indibidwal na nakahiwalay na serbisyo.
  • Idinagdag ang /etc/veritytab configuration file upang i-configure ang pag-verify ng data sa antas ng block gamit ang dm-verity module. Ang format ng file ay katulad ng /etc/crypttab - β€œsection_name device_for_data device_for_hashes check_hash_root options.” Idinagdag ang systemd.verity.root_options kernel command line na opsyon para i-configure ang dm-verity na gawi para sa root device.
  • Ang systemd-cryptsetup ay nagdaragdag ng kakayahang kunin ang PKCS#11 token URI at naka-encrypt na key mula sa LUKS2 metadata header sa JSON na format, na nagpapahintulot sa impormasyon tungkol sa pagbubukas ng naka-encrypt na device na maisama sa mismong device nang hindi kinasasangkutan ng mga external na file.
  • Ang systemd-cryptsetup ay nagbibigay ng suporta para sa pag-unlock ng LUKS2 na naka-encrypt na mga partisyon gamit ang TPM2 chips at FIDO2 token, bilang karagdagan sa mga dati nang sinusuportahang PKCS#11 token. Ang paglo-load ng libfido2 ay ginagawa sa pamamagitan ng dlopen(), i.e. ang availability ay sinusuri sa mabilisang, sa halip na bilang isang hard-wired dependency.
  • Ang mga bagong opsyon na "no-write-workqueue" at "no-read-workqueue" ay idinagdag sa /etc/crypttab para sa systemd-cryptsetup upang paganahin ang sabay-sabay na pagproseso ng I/O na nauugnay sa encryption at decryption.
  • Ang systemd-repart utility ay nagdagdag ng kakayahang i-activate ang mga naka-encrypt na partition gamit ang TPM2 chips, halimbawa, upang lumikha ng naka-encrypt na /var partition sa unang boot.
  • Ang systemd-cryptenroll utility ay idinagdag upang i-bind ang TPM2, FIDO2 at PKCS#11 token sa mga partition ng LUKS, gayundin upang i-unpin at tingnan ang mga token, itali ang mga ekstrang key at magtakda ng password para sa pag-access.
  • Idinagdag ang PrivateIPC parameter, na nagbibigay-daan sa iyong i-configure ang unit file para magpatakbo ng mga proseso sa isang nakahiwalay na espasyo ng IPC na may sariling hiwalay na mga identifier at pila ng mensahe. Upang ikonekta ang isang yunit sa isang nalikha nang puwang ng pagkakakilanlan ng IPC, ang opsyon na IPCNamespacePath ay iminungkahi.
  • Nagdagdag ng mga setting ng ExecPaths at NoExecPaths upang payagan ang flag ng noexec na mailapat sa mga partikular na bahagi ng file system.
  • systemd-networkd ay nagdaragdag ng suporta para sa BATMAN (Better Approach To Mobile Adhoc Networking) mesh protocol, na nagpapahintulot sa paglikha ng mga desentralisadong network kung saan ang bawat node ay konektado sa pamamagitan ng mga kalapit na node. Para sa configuration, ang seksyong [BatmanAdvanced] sa .netdev, ang BatmanAdvanced na parameter sa .network file, at isang bagong uri ng device na β€œbatadv” ay iminungkahi.
  • Ang pagpapatupad ng mekanismo ng maagang pagtugon para sa mababang memorya sa systemd-oomd system ay na-stabilize. Idinagdag ang opsyon na DefaultMemoryPressureDurationSec upang i-configure ang oras ng paghihintay para sa isang mapagkukunan na mailabas bago maapektuhan ang isang yunit. Ginagamit ng Systemd-oomd ang kernel subsystem ng PSI (Pressure Stall Information) at nagbibigay-daan sa iyo na makita ang simula ng mga pagkaantala dahil sa kakulangan ng mga mapagkukunan at piliing wakasan ang mga prosesong masinsinang mapagkukunan sa isang yugto kapag ang system ay wala pa sa isang kritikal na estado at hindi simulan ang intensively trim ang cache at ilipat ang data sa swap partition.
  • Idinagdag ang parameter ng command line ng kernel na "root=tmpfs", na nagpapahintulot sa iyo na i-mount ang root partition sa pansamantalang imbakan na matatagpuan sa RAM gamit ang Tmpfs.
  • Ang parameter na /etc/crypttab na tumutukoy sa key file ay maaari na ngayong tumuro sa mga uri ng socket ng AF_UNIX at SOCK_STREAM. Sa kasong ito, ang susi ay dapat ibigay kapag kumokonekta sa socket, na, halimbawa, ay maaaring magamit upang lumikha ng mga serbisyo na dynamic na nagbibigay ng mga susi.
  • Ang fallback na hostname para sa paggamit ng system manager at systemd-hostnamed ay maaari na ngayong itakda sa dalawang paraan: sa pamamagitan ng DEFAULT_HOSTNAME parameter sa os-release at sa pamamagitan ng $SYSTEMD_DEFAULT_HOSTNAME na environment variable. pinangangasiwaan din ng systemd-hostnamed ang "localhost" sa hostname at nagdaragdag ng kakayahang i-export ang hostname pati na rin ang mga katangian ng "HardwareVendor" at "HardwareModel" sa pamamagitan ng DBus.
  • Ang block na may nakalantad na mga variable ng kapaligiran ay maaari na ngayong i-configure sa pamamagitan ng bagong ManagerEnvironment na opsyon sa system.conf o user.conf, at hindi lamang sa pamamagitan ng kernel command line at mga setting ng unit file.
  • Sa oras ng pag-compile, posibleng gamitin ang fexecve() system call upang simulan ang mga proseso sa halip na execve() upang mabawasan ang pagkaantala sa pagitan ng pagsuri sa konteksto ng seguridad at paglalapat nito.
  • Para sa mga unit file, ang mga bagong conditional operations ConditionSecurity=tpm2 at ConditionCPUFeature ay idinagdag upang suriin ang pagkakaroon ng mga TPM2 device at indibidwal na mga kakayahan ng CPU (halimbawa, ConditionCPUFeature=rdrand ay maaaring gamitin upang suriin kung sinusuportahan ng processor ang operasyon ng RDRAND).
  • Para sa mga available na kernel, ang awtomatikong pagbuo ng mga system call table para sa mga filter ng seccom ay ipinatupad.
  • Idinagdag ang kakayahang palitan ang mga bagong bind mount sa mga umiiral nang mount namespace ng mga serbisyo, nang hindi na-restart ang mga serbisyo. Ang pagpapalit ay isinasagawa gamit ang mga utos na 'systemctl bind ...' at 'systemctl mount-image …'.
  • Nagdagdag ng suporta para sa pagtukoy ng mga landas sa mga setting ng StandardOutput at StandardError sa form na "truncate: Β» para sa paglilinis bago gamitin.
  • Idinagdag ang kakayahang magtatag ng koneksyon sa isang tinukoy na session ng user sa loob ng isang lokal na lalagyan sa sd-bus. Halimbawa "systemctl -user -M lennart@ start quux".
  • Ang mga sumusunod na parameter ay ipinatupad sa systemd.link file sa seksyong [Link]:
    • Promiscuous - nagbibigay-daan sa iyong ilipat ang device sa "promiscuous" na mode upang maproseso ang lahat ng mga network packet, kabilang ang mga hindi naka-address sa kasalukuyang system;
    • TransmitQueues at ReceiveQueues para sa pagtatakda ng bilang ng TX at RX queues;
    • TransmitQueueLength upang itakda ang laki ng TX queue; GenericSegmentOffloadMaxBytes at GenericSegmentOffloadMaxSegment para sa pagtatakda ng mga limitasyon para sa paggamit ng teknolohiyang GRO (Generic Receive Offload).
  • Ang mga bagong setting ay naidagdag sa systemd.network file:
    • [Network] RouteTable para pumili ng routing table;
    • [RoutingPolicyRule] Uri para sa uri ng pagruruta ("blackhole, "unreachable", "prohibit");
    • [IPv6AcceptRA] RouteDenyList at RouteAllowList para sa mga listahan ng pinapayagan at tinanggihang mga advertisement ng ruta;
    • [DHCPv6] UseAddres para huwag pansinin ang address na ibinigay ng DHCP;
    • [DHCPv6PrefixDelegation] ManageTemporaryAddress;
    • ActivationPolicy upang tukuyin ang patakaran tungkol sa aktibidad ng interface (palaging panatilihin ang UP o DOWN na estado, o payagan ang user na baguhin ang mga estado gamit ang command na "ip link set dev").
  • Idinagdag ang [VLAN] Protocol, IngressQOSMaps, EgressQOSMaps, at [MACVLAN] BroadcastMulticastQueueLength na mga opsyon sa systemd.netdev file para i-configure ang VLAN packet handling.
  • Huminto sa pag-mount ng /dev/ directory sa noexec mode dahil nagdudulot ito ng conflict kapag ginagamit ang executable flag sa /dev/sgx file. Upang ibalik ang dating gawi, maaari mong gamitin ang setting na NoExecPaths=/dev.
  • Ang mga pahintulot ng /dev/vsock file ay binago sa 0o666, at ang /dev/vhost-vsock at /dev/vhost-net na mga file ay inilipat sa kvm group.
  • Ang database ng hardware ID ay pinalawak gamit ang mga USB fingerprint reader na wastong sumusuporta sa sleep mode.
  • systemd-resolved idinagdag na suporta para sa pag-isyu ng mga tugon sa mga query sa DNSSEC sa pamamagitan ng isang stub resolver. Ang mga lokal na kliyente ay maaaring magsagawa ng pagpapatunay ng DNSSEC sa kanilang mga sarili, habang ang mga panlabas na kliyente ay hindi nababago sa parent DNS server.
  • Idinagdag ang opsyong CacheFromLocalhost sa resolved.conf, kapag nakatakda, ang systemd-resolved ay gagamit ng caching kahit para sa mga tawag sa DNS server sa 127.0.0.1 (bilang default, ang pag-cache ng mga naturang kahilingan ay hindi pinagana upang maiwasan ang double caching).
  • systemd-resolved ay nagdaragdag ng suporta para sa RFC-5001 NSIDs sa lokal na DNS resolver, na nagpapahintulot sa mga kliyente na mag-iba sa pagitan ng mga pakikipag-ugnayan sa lokal na solver at isa pang DNS server.
  • Ipinapatupad ng solvectl utility ang kakayahang magpakita ng impormasyon tungkol sa pinagmulan ng data (lokal na cache, kahilingan sa network, tugon ng lokal na processor) at ang paggamit ng encryption kapag nagpapadala ng data. Ang mga opsyon --cache, --synthesize, --network, --zone, --trust-anchor, at --validate ay ibinigay upang kontrolin ang proseso ng pagtukoy ng pangalan.
  • Ang systemd-nspawn ay nagdaragdag ng suporta para sa pag-configure ng firewall gamit ang mga nftable bilang karagdagan sa umiiral na suporta sa iptables. Ang setup ng IPMasquerade sa systemd-networkd ay nagdagdag ng kakayahang gumamit ng backend na nakabatay sa nftables.
  • systemd-localed idinagdag na suporta para sa pagtawag sa locale-gen upang makabuo ng mga nawawalang lokal.
  • Ang mga opsyon --pager/-no-pager/-json= ay naidagdag sa iba't ibang mga utility upang paganahin/paganahin ang paging mode at output sa JSON na format. Idinagdag ang kakayahang itakda ang bilang ng mga kulay na ginamit sa terminal sa pamamagitan ng SYSTEMD_COLORS environment variable ("16" o "256").
  • Ang build na may hiwalay na mga hierarchy ng direktoryo (split / at /usr) at suporta sa cgroup v1 ay hindi na ginagamit.
  • Ang master branch sa Git ay pinalitan ng pangalan mula sa 'master' sa 'main'.

Pinagmulan: opennet.ru

Magdagdag ng komento