Релиз systemd 234

После четырёх месяцев разработки состоялся релиз системного менеджера systemd 234. Из новшеств можно отметить переход с Automake на сборочную систему Meson, обеспечение перезапуска systemd-logind без потери состояния, возможность ограничить время выполнения unit-а, добавление в systemd-networkd реализации IPv6 Router Advertisment и появление возможности обработки диапазонов адресов IPv6.

Основные изменения:

  • Обеспечена поддержка сборки при помощи сборочной системы
    Meson, использующей инструментарий Ninja. Поддержка ранее применяемой сборки на основе Automake пока сохранена, но в будущих выпусках запланирована к удалению. Для сборки systemd вместо «./autogen.sh ./configure make sudo make install» теперь можно использовать «meson build ninja -C build sudo ninja -C build install»;

  • В менеджере сеансов systemd-logind обеспечена возможность перезапуска без потери состояния — при помощи механизма «FDSTORE=» перед выходом сохраняются файловые дескрипторы для обрабатываемых устройств, а при запуске восстанавливаются. Отмечается, что для применения данной возможности может потребоваться модификация сторонних компонентов, например, избавление кода Xorg от блока, отслеживающего состояние systemd-logind и прекращающего работу X-сервера в случае его остановки для защиты от появления неактуальных файловых дескрипторов графических устройств;
  • Для unit-файлов представлена опция «JobRunningTimeoutUSec=», позволяющая
    настроить размер таймаута, ограничивающего время выполнения работы. Например, подобные таймауты востребованы в unit-ах .device;

  • Для unit-файлов реализованы опции «ConditionUser=» и «ConditionGroup=», позволяющие организовать условный вызов в зависимости от пользователя и группы, от которого запущен пользовательский экземпляр systemd;
  • В systemd-networkd добавлена возможность обработки диапазонов адресов IPv6 с использованием протокола Router Advertisment. Для настройки диапазонов по префиксам в файлы «.network» добавлена секция «[IPv6Prefix]». Представлена новая урезанная реализация сервера для анонса маршрутов (Router Advertisment);
  • В systemd-networkd добавлена поддержка настройки линков GENEVE и установки меток для адресов IPv6. В файлы «.network» добавлены новые опции:
    • «FlowLabel=» в секцию «[VXLAN]»;
    • «VRP=», «MVRP=» ,»LooseBinding=», «ReorderHeader=» в секцию «[VLAN]»;
    • «Priority=» в секцию «[Bridge]»;
    • «GatewayOnlink=», «IPv6Preference=», «Protocol=» в секцию «[Route]»;
    • «IPv6ProxyNDP=» в секцию «[Network]».
  • В файлы «.link» добавлена возможность настройки номера порта (опция «Port=»);
  • В реализацию DHCP-сервера, предоставляемого в systemd-networkd, добавлена поддержка 119-опции DHCP, позволяющей передать список «domain search» для резолвера;
  • В journalctl в опцию «—output=» добавлен параметр «short-iso-precise», включающий вывод дат в формате точного времени ISO;
  • Вызов «net_id» в systemd-udevd научился формировать постоянные имена сетевых интерфейсов для устройств на базе ACPI и устройств IBM PowerVM VIO;
  • В systemd-resolved добавлена опция «MulticastDNS=» для включения/выключения поддержки MulticastDNS;
  • В systemd-resolved добавлена опциональная поддержка использования библиотеки libidn2 вместо libidn для обработки доменных имён с символами национальных алфавитов;
  • В команды подобные «machinectl pull-tar» добавлена поддержка верификации
    загружаемых образов по файлам «.sha256» в формате дистрибутивов SUSE (ранее поддерживались только файлы SHA256SUMS в стиле Ubuntu);

  • В sd-boot добавлена поддержка верификации образов при помощи SHIM/MOK (Machine Owner Key);
  • В «systemd-mount —umount» расширены методы определения параметров монтирования устройства при попытке отмонтирования по каталогу или пути к устройству.

Что касается проблемы, приводящей к выполнению сервисов с правами пользователя root, если в параметрах запуска указано имя пользователя, начинающееся с цифры, ранее закрытой без исправления, то она получила идентификатор CVE-2017-1000082 и рассматривается дистрибутивами как уязвимость (Debian, Red Hat, Fedora, SUSE). Для включения в systemd было предложено исправление, блокирующее загрузку unit-ов с некорректными именами пользователей. Леннарт Поттеринг в целом одобрил данный патч, но выразил сомнение в целесообразности его распространения на опции «PrivateTmp=», «PrivateNetwork=», «PrivateUsers=», предназначенные для работы в изолированных окружениях. В итоге Леннарт Поттеринг признал проблему и патч был включён в состав выпуска systemd 234.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.