После четырёх месяцев разработки состоялся релиз системного менеджера 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.

Источник: http://www.opennet.ru/opennews/art.shtml?num=46843