Как стать автором
Обновить
Selectel
IT-инфраструктура для бизнеса

Дождались — вышел релиз системного менеджера systemd 247

Время на прочтение3 мин
Количество просмотров9.1K

Разработка системного менеджера systemd 247 заняла у создателей свыше четырех месяцев, но это того стоило. В новом выпуске появился экспериментальный обработчик нехватки памяти, добавлен механизм для безопасной передачи конфиденциальных данных в сервисы, а также стабилизирована утилита system-dissect.

На самом деле, нового гораздо больше, подробности — под катом.

  • Одно из самых заметных изменений — внесение в правила udev нарушающих обратную совместимость изменений. Эти изменения нужны для корректной реализации в udev uevent-событий «bind» и «unbind», внесенных в модель устройств ядра Linux 4.14. Обычно они генерируются для USB-устройств и девайсов, в которые до начала работы нужно загрузить прошивку. Для того чтобы использовать новый systemd-udevd, дистрибутивам потребуется обновить правила udev, заменив вызовы 'ACTION!=«add|change»,GOTO=«xyz_end»' на 'ACTION==«remove»,GOTO=«xyz_end»'.

    По словам разработчиков, это необходимо из-за нарушающих совместимость изменений в ядре Linux. Теперь большое количество драйверов используют события «bind» и «unbind», для поддержки которых требуется кардинальное изменение логики обработки событий. Поэтому разработчики переработали концепцию тегов, которая позволяет помечать, а также фильтровать устройства в процессе отслеживания. Теги udev привязываются к определенному устройству и могут быть удалены, до того как удаляется устройство. В целом, тег теперь связывается не с событием устройства, а с ним самим, не меняясь после нового события.
  • В journalctl добавлена опция "--image" для обращения к логам в дисковом образе. Обеспечена подсветка вывода в режиме "--output=cat".
  • Кроме того, добавлена экспериментальная поддержка раннего реагирования на нехватку памяти в системе (systemd-oomd), реализованная на базе обработчика oomd, который развивает компания Facebook. Oomd при этом использует подсистему ядра PSI, которая дает возможность проанализировать в пространстве пользователя данные о времени ожидания разных ресурсов для точной оценки уровня загруженности системы и характера замедления работы.
  • Для системных сервисов предложена новая логика безопасной передачи конфиденциальных данных, включая пароли, ключи шифрования, имена пользователей, сертификаты и т.п. Для передачи данных предложены такие параметры, как SetCredential и LoadCredential. Учетные данные передаются через промежуточные файлы в специализированном каталоге, который определяется через переменную окружения $CREDENTIALS_DIRECTORY.
  • В JSON-профили пользователей systemd-homed разработчики добавили поддержку ключей восстановления, которые включают сгенерированные автоматически запасные парольные фразы для разблокировки учетной записи или каталогов. Это необходимо в том случае, если утерян токен FIDO2 или PKCS#11
  • Также стабилизирован и размещен в /usr/bin инструмент systemd-dissect. Он занимается разбором дисковых образов в соответствии с Bootable Partition Specification. Инструмент можно использовать для монтирования в локальную директорию дисковых образов со сложной раскладкой разделов.
  • Еще один положительный момент — динамическая загрузка libqrencode, libpcre2, libidn/libidn2, libpwquality и libcryptsetup с использованием dlopen(), вместо жесткого указания зависимостей в заголовке ELF.
  • Для тех сервисов, которые используют параметры RootImage и RootDirectory, по умолчанию активирована настройка MountAPIVFS, включающая автоматическое подключение псевдо-ФС /proc/, /sys/ и /dev/.
  • Важный апдейт — добавление нового фильтра системных вызовов "@known", который включает системные вызовы, известные на момент сборки systemd.

Теги:
Хабы:
Всего голосов 29: ↑28 и ↓1+27
Комментарии10

Публикации

Информация

Сайт
selectel.ru
Дата регистрации
Дата основания
Численность
501–1 000 человек
Местоположение
Россия
Представитель
Влад Ефименко