Представлен выпуск системного менеджера systemd 230. Из новшеств можно отметить включение по умолчанию DNSSEС и режима чистки процессов пользователя после завершения сеанса, поддержку унифицированной иерархии cgroup, возможность настройки прокси ARP для сетевого интерфейса, новые типы юнитов generated и transient, новую команду systemctl revert
и возможность создания виртуальных прямых сетевых ссылок между контейнерами.
Основные изменения:
- В DNS-резолвере systemd-resolved по умолчанию включен DNSSEC. DNSSEC доступен в режиме
allow-downgrade
(автоматический откат на режим без DNSSEC) и может быть отключен через настройкуDNSSEC
вresolved.conf
или на этапе сборки при указании опцииconfigure --with-default-dnssec=no
. Дистрибутивам пока не рекомендуется включать DNSSEC по умолчанию, пока не будут выявлены все возможные несовместимости режима DNSSEC с DNS-серверами. - В systemd-resolve добавлена возможность резолвинга DNS-записей DANE (DNS-based Authentication of Named Entities) при указании опции
--tlsa
и OPENPGPKEY при указании опции--openpgp
, а также создания дампа raw-данных записей DNS при указании опции--raw=дамп
. - В systemd-logind по умолчанию обеспечено принудительное завершение процессов, запущенных в составе пользовательского сеанса, после выхода пользователя из системы. Управлять принудительным завершением можно через опцию
KillUserProcesses
вlogind.conf
, которая теперь выставлена в значениеyes
по умолчанию, что требует отдельных настроек, если необходимо сохранить работу длительно выполняемых пользовательских процессов (для работы screen и tmux требуется специальная настройка сервисов, например, включение т.н. lingering через loginctl). Для восстановления старого поведения на этапе сборки можно указать опцию--without-kill-user-processes
. - В systemd-logind добавлены новые настройки
SessionsMax
иInhibitorsMax
, которые по умолчанию установлены в значение 8192. - В systemd-logind добавлена поддержка обновления конфигурации по сигналу SIGHUP.
- Добавлена поддержка унифицированной иерархии cgroup (в ядре с 4.5), для задействования которой в systemd при загрузке требуется указать опцию командной строки ядра
systemd.unified_cgroup_hierarchy=1
. Для унифицированной иерархии также добавлен контроллер cgroup io, который дополнил контроллеры memory и pids. - Поддержка протокола LLDP (Link Layer Discovery Protocol) расширена возможностями использования пассивного (только приём) и активного (отправка) режимов. Пассивный режим включен по умолчанию в systemd-networkd, а активный режим включен по умолчанию в изолированных контейнерах с адресацией внутренней сети. Для просмотра статистики можно использовать команду
networkctl lldp
. - Добавлена возможность настройки уникальных идентификаторов IAID и DUID, отправляемых в запросах DHCP. Идентификаторы могут быть определены как для всей системы, так и для отдельных файлов .network при помощи опций
DUIDType
,DUIDRawData
иIAID
. - В systemd-networkd добавлена возможность настройки прокси ARP для отдельных сетевых интерфейсов, используя опцию
ProxyArp
в файлах .network. Кроме того, в файлы .netdev добавлены опцииMulticastQuerier
иMulticastSnooping
, позволяющие включить режим отправки запросов и прослушивания IGMP-трафика. - В файлах .network представлена новая опция
PreferredLifetime
, позволяющая определить время жизни IP-адреса. - В DHCP-сервере, встроенном в systemd-networkd, активирована по умолчанию опция
EmitRouter
, включающая поле DHCP Option 3 (Router). - Тестовая утилита systemd-activate переименована в systemd-socket-activate и перемещена в
/usr/bin
. - В systemd-journald задействован отдельный поток для сброса прокэшированных данных на диск при закрытии файлов с журналом, что решило проблемы с задержками записи в лог на медленных дисках.
- В journalctl добавлен новый метод вывода
-o short-unix
, при котором к записями в логе добавляется префикс с эпохальным (UNIX) временем (число секунд с 1970 года). Также добавлена опция--no-hostname
для исключения столбца с именем хоста. - Устройства фреймбуфера, сканеры и 3D-принтеры теперь подключаются в режиме
uaccess
и доступны для вошедших в систему пользователей. - В опции
DeviceAllow
теперь можно указывать спецификаторы (начинаются с символа %). - В
systemctl show
добавлена опция--value
, позволяющая вывести только содержимое заданного свойства юнита без указания его имени. - Для автоматически сгенерированных и созданных в процессе работы через обращения к API файлов добавлены новые типы юнитов generated и transient.
- Добавлена новая команда
systemctl revert
для отката к предоставляемой поставщиком версии файла юнита в случае внесения в файл юнита локальных изменений. - В
machinectl clean
добавлена возможность автоматического удаления всех или только скрытых образов контейнеров. - В systemd-tmpfiles добавлен новый тип записи «e», позволяющий организовать очистку директорий, если они уже существуют.
- В systemd-nspawn добавлена поддержка автоматического исправления UID/GID и ACL для всех файлов и директорий в контейнере для их соответствия диапазону UID/GID, выбранному при запуске контейнера.
- В systemd-nspawn добавлена новая опция
--network-zone
для создания виртуальных прямых линков между контейнерами. - Для socket-юнитов добавлены опции
TriggerLimitIntervalSec
иTriggerLimitBurst
для настройки лимитов на возможное число активаций в заданный промежуток времени. - Компонент systemd-bootchart вынесен в отдельный репозиторий.
- Из состава удалён systemd-bus-proxyd, так как kdbus вряд ли будет принят в ядро в своём текущем виде.
- Удалены библиотеки libsystemd-daemon.so, libsystemd-journal.so, libsystemd-id128.so и libsystemd-login.so, которые ранее были объявлены устаревшими.
- Удалена опция
Capabilities
, вместо которой следует использоватьAmbientCapabilities
иCapabilityBoundingSet
.
>>> Подробности