Выпущена Systemd 262 — последняя стабильная версия широко используемого системного и сервисного менеджера Linux, в которой представлены новые возможности для работы с контейнерами и виртуализацией, улучшены TPM и шифрование, улучшено восстановление журналов и внесено несколько улучшений в управление сервисами.
Одним из заметных нововведений стала поддержка сборки systemd в виде одного статически связанного бинарного файла PID 1/executor, предназначенного в первую очередь для очень маленьких контейнерных сред. Такие сборки позволяют избежать динамической загрузки дополнительных библиотек и используют упрощенный поиск пользователей и групп вместо NSS.
Управление сервисами получило несколько дополнений. Новая опция RestartRandomizedDelaySec= вводит случайную задержку перед автоматическим перезапуском службы, что помогает предотвратить одновременный перезапуск множества служб после сбоя. Блоки Slice также получили опцию ActivatingConcurrencyMax=, которая ограничивает количество блоков в иерархии Slice, которые могут активироваться одновременно, при этом дополнительные задания ставятся в очередь до тех пор, пока не освободится место.
Что касается виртуализации, systemd-vmspawn теперь поддерживает конфиденциальные виртуальные машины Intel TDX с помощью опции --coco=, дополняющей существующую поддержку AMD SEV-SNP. Безопасную загрузку можно включить с помощью совместимой прошивки конфиденциальной виртуальной машины.
Также есть важные улучшения, связанные с TPM. Учетные данные, защищенные TPM, теперь привязаны к корневому ключу хранилища TPM, что обеспечивает дополнительную защиту от атак с использованием подключенного устройства TPM. Systemd 262 также добавляет поддержку Argon2id для регистрации PIN-кода TPM2, улучшая материал ключа на основе PIN-кода по сравнению с более старым подходом, совместимым с direct / PBKDF2.
Более того, systemd-cryptenroll получает дополнительный мастер первой загрузки для добавления дополнительных механизмов разблокировки диска в системах, которые полагаются на автоматическое шифрование на основе TPM. Новые параметры --unlock-empty и --unlock-headless также доступны для автоматизированных систем и систем без графического интерфейса.
Еще одно заметное изменение, связанное с хранением данных, затрагивает systemd-homed. Вновь созданные домашние каталоги с поддержкой fscrypt по умолчанию используют политики fscrypt версии 2. Существующие домашние каталоги версии 1 по-прежнему поддерживаются, но переход с одного формата на другой невозможен.
В стеке журналов улучшена надежность. Теперь systemd может пытаться восстановить корректные записи из активных файлов журнала, в которых данные заголовка или хвостовой части были усечены во время некорректного завершения работы при высокой активности записи. Важно отметить, что поддержка шифрования журналов была перенесена из libgcrypt в OpenSSL.
Что касается сетевых подключений, systemd-networkd может сопоставлять сетевые конфигурации с тегами компьютеров, а networkctl reload получает новую опцию --no-reconfigure для перезагрузки файлов конфигурации без немедленной перенастройки существующих интерфейсов. Несколько настроек сетевых устройств, расположенных друг над другом, также могут принимать несколько имен устройств одновременно.
Кроме того, в systemd 262 расширены возможности systemd-sysupdate, которая теперь хранит постоянную базу данных установленных файлов и может удалять файлы, которые больше не соответствуют текущей конфигурации, с помощью новой операции очистки.
Компоненты и функции также получили механизм подсказок, который может автоматически рекомендовать или включать элементы в зависимости от архитектуры, среды виртуализации, свойств встроенного ПО, тегов оборудования и других характеристик системы.
Среди других изменений — поддержка OpenSSL 4, новые run0 параметры, совместимые с несколькими привычными функциями sudo, headless режим для systemd.firstboot=, улучшенная обратная связь по PIN-коду FIDO2 и новая экспериментальная --introspect-cli опция, которая предоставляет машиночитаемые метаданные команд в формате JSON, избавляя от необходимости анализировать --help вывод с помощью скриптов.
Как обычно бывает в крупных релизах systemd, в версии 262 внесено несколько изменений, связанных с совместимостью, и удалено несколько устаревших функций. В частности, устаревший протокол сокетов управления udev заменен на Varlink IPC, удалены некоторые старые параметры сборки Meson, а также изменены некоторые выходные данные команд и интерфейсы JSON.
Дополнительные сведения, см. полный журнал изменений.
