Достъпен е системният мениджър systemd 260

След три месеца разработка, издаден е релиз на системния мениджър systemd 260. Ключовите промени включват: прекратяване на поддръжката на скриптове за услуги във формат System V, механизъм „mstack“ за композиране на многослойни йерархии на монтиране, утилита systemd-report, поддръжка на интеграция на systemd-networkd с ModemManager, поддръжка на потребителски преносими услуги, концепцията за „xaccess“ в systemd-logind и systemd-udevd.

Сред промените в новия релийз:

  • Прекратена е поддръжката на скриптове за услуги във формат System V и спряна е доставката на компонентите rc-local.service, systemd-sysv-install, systemd-rc-local-generator и systemd-sysv-generator.
  • Въведен е механизъмът „mstack“ (Mount Stack), позволяващ използването на директории с окончание „.mstack/“ за формиране на съставна йерархия от директории, образувана чрез последователно монтиране и наложение на дискови образи и части от файловата система с помощта на OverlayFS и „mount --bind“. Добавени са командата systemd-mstack, опцията „--mstack“ в systemd-nspawn и параметърът RootMStack в unit-ите, които могат да се използват за монтиране и демонтиране в един момент на всички елементи, определени в конфигурацията „.mstack“, например, за бързо възстановяване на образа на контейнера или работната среда на услугата. Всеки файл или поддиректория в „.mstack/“ определя един слой на монтиране или слой на „overlayfs“.

    Например, следната конфигурация „foobar.mstack/“ определя overlayfs с два слоя в режим само за четене от дисковите образи base.raw и app.raw (указани като символични връзки) и директория „rw“ с възможност за запис върху тях: foobar.mstack/layer@0.raw → ../base.raw foobar.mstack/layer@1.raw → ../app.raw foobar.mstack/rw/

  • Реализирани са фреймворките „metrics“ и „report“, които могат да се използват от системните компоненти за извеждане на статистика чрез Varlink в директорията /run/systemd/report/. Добавена е утилитата systemd-report, която генерира обобщен отчет, обединяващ статистиката от всички компоненти и я извежда в JSON формат. В момента метриките предоставят само мениджърът на услуги и systemd-networkd.
  • В systemd-networkd е осигурена интеграция с ModemManager и е добавен разделът „[MobileNetwork]“ с настройки APN, AllowedAuthenticationMechanisms, User, Password, IPFamily, AllowRoaming, PIN, OperatorId, RouteMetric и UseGateway, позволяващи на systemd-networkd да се свързва през модем с мобилни оператори.
  • Възможността за стартиране на systemd-portabled като потребителска услуга, стартирана от непривилегирован потребител е добавена. За избора на тип услуга в утилитата portablectl са добавени флаговете «—user» и «—system». Преносимите услуги („Portable Services“) представляват системни услуги, оформени като независими контейнери (предоставят се като системен образ, но се обработват като обикновена услуга).
  • В systemd-logind и systemd-udevd е добавена поддръжка на концепцията „xaccess“ (Разширен достъп), която позволява в графична сесия да се предостави достъп до GPU за потребители с отдалечен достъп, които физически не ползват монитор и устройства за вход на локалната система (подобно на достъпа uaccess, обхващащ физически работещите с компютъра потребители). За настройка на сесиите в този случай се предлага чрез PAM да се зададе променлива на средата XDG_SESSION_EXTRA_DEVICE_ACCESS.
  • За автоматизиране на настройката на DeviceTree в UKI-образи (Unified Kernel Image) е предложен каноничен набор от файлове с идентификатори на оборудване в "/usr/lib/systemd/boot/hwids/", свързващи идентификаторите на устройствата с елементите на DeviceTree. С помощта на този набор UKI-образа автоматично открива и зарежда необходимия DTB (Device Tree Blob) по време на зареждане, без необходимост от създаване на образи, специфични за всяко устройство. В момента hwid-файловете са създадени за ARM64-устройства на база чипове Snapdragon.
  • В "/etc/os-release" е добавено ново поле "FANCY_NAME", различаващо се от "PRETTY_NAME" с възможността за използване на не-ASCII глифове на Unicode. При наличие на полето "FANCY_NAME" то ще се използва в изхода на systemd, systemd-hostnamed и hostnamectl вместо "PRETTY_NAME".
  • Услугите, предоставящи публични интерфейси Varlink, с помощта на символични линкове са събрани в един каталог "/run/varlink/registry/". За преглед на списъка с подобни услуги е реализирана команда ‘varlinkctl list-registry’.
  • В unit-ите е реализирана възможност за указване в параметъра PrivateUsers стойността “managed” за автоматично назначаване на диапазони от идентификатори на потребители и групи (UID/GID) чрез systemd-nsresourced.
  • В unit-ите е добавена настройка RefreshOnReload за обновление на разширенията и учетните данни при повторно стартиране на unit-а.
  • В unit-ите е добавена настройка BindNetworkInterface за автоматично свързване на всички създавани в unit-а сокети към указаното мрежово интерфейс.
  • В unit-ите добавени настройки ConditionPathIsSocket и AssertPathIsSocket за промяна на поведението или аварийно спиране на unit-а, ако указаните пътища не са сокети.
  • В systemctl добавена команда ‘enqueue-marked’, която извиква метода D-Bus EnqueueMarkedJobs(). Параметърът ‘—marked’, използван преди за тези цели, е обявен за остарял.
  • В услугите добавена настройка MemoryTHP за управление на използването на големи страници памет (THP — Transparent Huge Pages).
  • В .delegate файловете на systemd-resolved добавена поддръжка на параметъра FirewallMark за задаване на етикет (firewall mark) в мрежовия стек за генерирания DNS трафик.
  • В systemd-sysupdate добавена команда ‘acquire’ за разделяне на етапите на зареждане и инсталиране или обновление. Реализирана поддръжка за маркиране на дялове като частично заредени.
  • В systemd-vmspawn добавена опция «—image-format» за избор на формат (qcow2 или raw) на дисковия образ.
  • В systemd-inhibit за опцията «—list» реализирана поддръжка на формата «JSON» с възможност за използване на флаговете «—what», «—who», «—why» и «—mode» за филтриране на изхода.
  • В systemd-repart добавена базова поддръжка за контрол на целостта на криптирани дялове, използвайки dm-integrity.
  • В утилитата systemd-keyutil добавена команда ‘extract-certificate’ за извеждане на съдържанието на X.509 сертификати.
  • В systemd-sysext и varlinkctl реализирана поддръжка на интерактивно преминаване на авторизация чрез polkit.
  • Добавена polkit политика, позволяваща на непривилегирован потребител да извика systemd-ask-password.
  • В systemd-importd добавена възможност за зареждане на OCI образы с командата «importctl pull-oci», които се запазват под форма на образи за монтиране чрез «mstack».
  • Добавена поддръжка на цветове SYSTEMD_COLORS=auto-16, SYSTEMD_COLORS=auto-256 и SYSTEMD_COLORS=auto-24bit.
  • Предоставени пълнофункционални отделни изпълними файлове systemd-sysusers и systemd-tmpfiles (преди се събираха урезани версии).
  • В systemd-oomd добавен «prekill hook», позволяващ свързване на обработчици, които се активират преди принудително приключване на процес поради недостиг на памет в системата.
  • Възобновена, но обозначена като остаряла, възможността за използване на несистемни потребители и групи в правилата на udev (OWNER=\/GROUP=) и настройките на systemd-networkd (User=\/Group=).
  • В systemd-repart внедрена функционалност от xfsprogs 6.17.0 на утилитата mkfs.xfs за разгръщане на началното съдържание на файловата система от указаната директория.
  • Повишени изисквания към минималните версии: ядро Linux 5.4 → 5.10 (препоръчително 5.14, а за пълна функционалност — 6.6), libidn → libidn2, Python 3.7.0 → 3.9.0, glibc 2.31 → 2.34, OpenSSL 1.1.0 → 3.0.0, cryptsetup 2.0.1/2.3.0 → 2.4.0, elfutils 158 → 177, libblkid 2.24 → 2.37, libseccomp 2.3.1 → 2.4.0.
  • Преработени и опростени са правилата за осигуряване на преносимост и стабилност, в които са усилени задълженията за предотвратяване на видими за потребителите регресии в публичните интерфейси.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster