Pärast üheksa kuud arendust on välja antud systemd 258 süsteemi halduri versioon. Peamised muudatused: cgroups v1 ja System V-stiilis süsteemi haldustooted ei ole enam toetatud, uued utiliidid systemd-factory-reset ja systemd-pty-forward, kodupiirkondade kontseptsioon, toetatakse laadimist diskipildist, mis on saadud HTTP kaudu.
Among the changes in the new release:
- Lisatud utiliit systemd-factory-reset, et algatada või tühistada kohandatud seadete taastamine (factory reset) järgmise käivitamise ajal. Kiirteadmise taastamise jaoks on lisatud factory-reset-now.target üksus. Käivitamisprotsessi ajal taastamiseks on lisatud kernel'i käsurea parameeter 'systemd.factory_reset'.
- Lisatud kodupiirkondade (home area) kontseptsioon, mis võimaldab määrata alakaustu põhi kodu katalooge ($HOME), kuhu kasutaja saab eraldi siseneda, et töötada erinevates tööruumides. Näiteks võib ühe kasutaja jaoks luua eraldi piirkonnad süsteemide seadistuste testimiseks ja arendamiseks (~ /Areas/foo ja ~ /Areas/bar). Täiendava piirkonna ühendamiseks sisenemise ajal tuleb logimisel märkida piirkonna nimi, eraldades selle sümboliga '%', ('username%foo') või kasutada utiliiti run0 koos valikuga '--area'. Kodupiirkondade tugi on praegu teostatud ainult systemd-homed'is ja ei ole saadaval täiskohaga graafilistes seanssides.
- Kernel'i käsurea parameetritesse 'systemd.pull' ja 'rd.systemd.pull', mida kasutatakse automaatseks käivitamiseks, virtuaalmasinate, konteinerite või laiendatud piltide (sysext, confext) jaoks on lisatud lipp 'blockdev'. Kui see lipp on määratud, kinnitatakse laaditud pilt loopback-seadmestikku, mis võimaldab otse laadida diskipilti, mis on saadud HTTP kaudu. Näiteks: rd.systemd.pull=raw,machine,verify=no,blockdev:image:https://192.168.100.1:8081/image.raw \ root=/dev/disk/by-loop-ref/image.raw-part2
- Lisatud utiliit systemd-pty-forward, millega saab luua pseudoterminali ('PTY') ja käivitada sellel protsessi, suunates kõik väljundi algsesse terminali, kus utiliit käivitati.
- Kood, mis toetab cgroups v1, on eemaldatud.
- Eemaldatud on System V-stiilis süsteemi haldustooted, näiteks utiliidid itctl, runlevel ja telinit, seade /dev/initctl, käivitustaseme (runlevel) kontseptsioon, unit-failid runlevel[0-6].target ja võimalus hallata olekut via init käsk. System V teenuste skriptide toe eemaldamine on planeeritud järgmiseks väljaandeks.
- Linuxi tuum要求已提高至5.4版(建议使用5.7版)。
- tty/pts 设备的权限已从 0620 (-rw—w—-) 更改为 0600 (-rw——-) ,以禁止同组的其他用户向别人终端写入。要恢复旧的行为,可在构建时使用选项 '-Dtty-mode=0620'。
- systemd-resolved 和 systemd-importd 中已停止对 GnuTLS 和 libgcrypt 库的支持,保留了 OpenSSL 作为加密后端。
- 在 unit 文件中添加了对条件 'ConditionKernelModuleLoaded' 的支持,以检查特定内核模块的加载情况。条件 'ConditionKernelVersion' 被替换为更通用的 'ConditionVersion' 结构,通过该结构可以检查内核、systemd 和 glibc 的版本。
- 为位于 tmpfs 的 /tmp/ 和 /dev/shm/ 添加了对用户配额的支持。
- 对于当前用户服务的隔离而使用的 slice 单元(app.slice、background.slice、session.slice),实现了 ConcurrencySoftMax 和 ConcurrencyHardMax 设置,以管理活动单元的数量。新增的功能可以用作资源消费管理的机制,支持层次性的作业池。
- ExecStart 配置中增加了 '|' 前缀的支持,用于通过命令解释器进行启动。
- 实现了基于 Varlink 协议的 API,可用于查明当前状态、单元列表和单元状态。
- 为在 initrd 中运行的系统服务添加了额外的预设目录,允许分开启用主机和 initrd 的系统服务。
- 新增了将配额绑定到特定服务的功能,使用 StateDirectoryQuota、StateDirectoryAccounting、CacheDirectoryQuota、CacheDirectoryAccounting、LogsDirectoryQuota 和 LogsDirectoryAccounting 配置。
- systemd-udevd on lisatud omaduste tugi ID_NET_BRING_UP_BEFORE_JOINING_BRIDGE, ID_NET_NAME_INCLUDE_DOMAIN, ID_AV_LIGHTS. Lisatud kernelikonstruktsiooni parameeter „udev.trace“ ja valik „—traceu“ utiliidis devadm udevi laadimise ja töö ajal jälgimise jaoks. Utiliidis udevadm on lisatud käsk „cat“ installitud reeglite failide sisu näitamiseks. Tagatud on Androidi (ADB DbC, ADB, Fastboot) silumis USB-liideste automaatne märgistamine, et ligipääs oleks mitteprivileegitud kasutajatel.
- systemd-networkd-sse on lisatud seadistused IPv4DuplicateAddressDetectionTimeoutSec, UseSIP sektsiooni „[DHCPv6]“, MPLSRouting sektsiooni „[Network]“, Preference sektsiooni „[IPv6RoutePrefix]“, LinkLocalLearning, Locked, MACAuthenticationBypass ja VLANTunnel sektsiooni „[Bridge]“. DHCPv4 kliendile on lisatud BOOTP protokolli tugi.
- systemd-logind on lisatud uued sessiooniklassid: „none“ seansi loomise keelamiseks; „user-light“ ja „user-early-light“ kasutaja sessioonide loomiseks, ilma teenusehaldurile kasutaja aktiveerimiseta (mitteinteraktiivsete sessioonide jaoks).
- systemd-resolved on lisatud delegatsiooni tsoonide tugi („delegate zone“), võimaldades suunata DNS-i päringud teatud domeenide kaudu määratud. serverid DNS. Tagatud on sama domeeni A ja AAAA DNS-kirjete paralleelne päringute saatmine. resolved.conf-s on lisatud seadistus RefuseRecordTypes blokeeritavate kirjetüüpide määratlemiseks, näiteks A-kirjete blokeerimiseks ainult IPv6 hostide puhul.
- Käsk „systemctl start“ on lisatud valik „—verbose“, et kuvada logi ühtsuste töö kohta, mille üle teostatakse toiming.
- systemd-boot on lisatud kahe uue bootloaderi spetsifikatsiooni tugi - „uki“ ja „uki-url“. Teisel juhul on rakendatud UKI pildi laadimise võimalus välisest hostist HTTP protokolli kaudu. Lisatud on UEFI püsivara piltide sisestamise võimalus UKI (Unified Kernel Image) piltidesse. loader.conf-s on lisatud seadistus „reboot-on-error“ määrama toimingud (taaskäivitada või kuvada käivitamismenüü) valitud käivituspositsiooni ebaõnnestumise korral.
- systemd-nspawn on lisatud mitteprivileegitud konteineripiltide, mis on salvestatud tavalistes kaustades, käivitamise tugi.
- systemd-importd on lisatud zstd (lisaks .xz, .gz ja .bz2) algoritmiga kompressitud piltide tugi.
- Lisatud on käsklusridade argumendid „systemd.break“ ja „rd.systemd.break“, mis võimaldavad sisestada interaktiivseid peatuspunkte, mis katkestavad laadimise kindlates punktides. Saadaval on neli peatuspunkti: „pre-udev“, „pre-basic“, „pre-mount“ ja „pre-switch-root“.
- Järgmises versioonis kavandatakse lõpetada kausta /run/lock/ ja iptablesi paketifiltri tugi (systemd-networkd ja systemd-nspawn toetab ainult nftablesi). Samuti on kavandatud minimaalsete versiooninõuete tõstmine: Linuxi kernel 5.10, glibc 2.34, openssl 3.0.0, python 3.9.0.
Allikas: opennet.ru
