Выпуск системного менеджера systemd 246

Материал из Викиновостей, свободного источника новостей
Перейти к навигации Перейти к поиску

31 июля 2020 года

Wikinews-logo-ru.svg

После пяти месяцев разработки представлен релиз системного менеджера systemd 246. В новом выпуске реализована поддержка заморозки unit-ов, возможность верификации образа корневого диска по цифровой подписи, поддержка сжатия журнала и core-дампов с использованием алгоритма ZSTD, возможность разблокировки переносимых домашних каталогов при помощи токенов FIDO2, поддержка разблокировки разделов Microsoft BitLocker через /etc/crypttab, выполнено переименование BlackList в DenyList.

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

  • Добавлена поддержка cgroup-контроллера freezer, при помощи которого можно остановить работу процессов и временно высвободить некоторые ресурсы (CPU, ввод/вывод и потенциально даже память) для выполнения других задач. Управление заморозкой и разморозкой unit-ов осуществляется при помощи новой команды "systemctl freeze" или через D-Bus.
  • Добавлена поддержка верификации образа корневого диска по цифровой подписи. Проверка производится при помощи новых настроек в сервисных юнитах: RootHash (корневой хэш для верификации дискового образа, указанного через опцию RootImage) и RootHashSignature (цифровая подпись в формате PKCS#7 для корневого хэша).
  • В обработчике PID 1 реализована возможность автоматической загрузки предкомпилированных правил AppArmor (/etc/apparmor/earlypolicy) на начальном этапе загрузки.
  • Добавлены новые настройки unit-файлов: ConditionPathIsEncrypted и AssertPathIsEncrypted для проверки размещения указанного пути на блочном устройстве, в котором используется шифрование (dm-crypt/LUKS), ConditionEnvironment и AssertEnvironment для проверки переменных окружения (например, выставляемых PAM или при настройке контейнеров).
  • Для юнитов *.mount реализована настройка ReadWriteOnly, запрещающая монтировать раздел в режиме только для чтения, если не удалось примонтировать его для чтения и записи. В /etc/fstab данный режим настраивается при помощи опции "x-systemd.rw-only".
  • Для юнитов *.socket добавлена настройка PassPacketInfo, включающая добавление ядром дополнительных метаданных для каждого пакета, читаемого из сокета (включает режимы IP_PKTINFO, IPV6_RECVPKTINFO и NETLINK_PKTINFO для сокета).
  • Для сервисов (юниты *.service) предложены настройки CoredumpFilter (определяет секции памяти, которые следует включать в core-дампы) и TimeoutStartFailureMode/TimeoutStopFailureMode (определяет поведение (SIGTERM, SIGABRT или SIGKILL) при наступлении таймаута при запуске или остановке сервиса).
  • В большинстве опций добавлена поддержка указания шестнадцатеричных значений, заданных при помощи префикса "0x".
  • В различных параметрах командной строки и файлах конфигурации, связанных с настройкой ключей или сертификатов, реализована возможность указания пути к unix-сокетам (AF_UNIX) для передачи ключей и сертификатов через обращения к IPC-сервисам, когда нежелательно размещать сертификаты на незашифрованных дисковых хранилищах.
  • Добавлена поддержка шести новых спецификаторов, которые можно использовать в unit-ах , tmpfiles.d/, sysusers.d/ и других конфигурационных файлах: %a для подстановки текущей архитектуры, %o/%w/%B/%W для подстановки полей с идентификаторами из /etc/os-release и %l для подстановки короткого имени хоста.
  • В unit-файлах прекращена поддержка синтаксиса ".include", который был объявлен устаревшим 6 лет назад.
  • В настройках StandardError и StandardOutput прекращена поддержка значений "syslog" и "syslog-console", которые будут автоматически сконвертированы в "journal" и "journal+console".
  • Для автоматически создаваемых точек монтирования на основе tmpfs (/tmp, /run, /dev/shm и т.п.) обеспечено выставление лимитов на размер и число inode, соответствующий 50% от размера ОЗУ для /tmp и /dev/shm, и 10% от ОЗУ для всех остальных.
  • Добавлены новые параметры командной строки ядра: systemd.hostname для выставления имени хоста на начальной стадии загрузки, udev.blockdev_read_only для ограничения всех связанных с физическими накопителями блочных устройств режимом только для чтения (для выборочной отмены можно использовать команду "blockdev --setrw"), systemd.swap для отключения автоматической активации раздела подкачки, systemd.clock-usec для установки системных часов в микросекундах, systemd.condition-needs-update и systemd.condition-first-boot для переопределения проверок ConditionNeedsUpdate и ConditionFirstBoot.
  • По умолчанию обеспечена установка sysctl fs.suid_dumpable в значение 2 ("suidsafe"), разрешающее сохранение core-дампов для процессов с флагом suid.
  • В БД оборудования из ChromiumOS заимствован файл /usr/lib/udev/hwdb.d/60-autosuspend.hwdb, включающий сведения о PCI и USB-устройствах, поддерживающих автоматический переход в спящий режим.
  • В networkd.conf добавлена настройка ManageForeignRoutes, при включении которой systemd-networkd начнёт управлять всеми маршрутами, настроенными другими утилитами.
  • В файлы .network добавлена секция "[SR-IOV]" для настройки сетевых устройств с поддержкой SR-IOV (Single Root I/O Virtualization).
  • В systemd-networkd в секцию "[Network]" добавлена настройка IPv4AcceptLocal для разрешения приёма на сетевом интерфейсе пакетов, пришедших с локальным исходным адресом.
  • В systemd-networkd добавлена возможность настройки дисциплин приоритизации трафика HTB через секции [HierarchyTokenBucket] и [HierarchyTokenBucketClass], "pfifo" через [PFIFO], "GRED" через [GenericRandomEarlyDetection], "SFB" через [StochasticFairBlue], "cake" через [CAKE], "PIE" через [PIE], "DRR" через [DeficitRoundRobinScheduler] и [DeficitRoundRobinSchedulerClass], "BFIFO" через [BFIFO], "PFIFOHeadDrop" через [PFIFOHeadDrop], "PFIFOFast" через [PFIFOFast], "HHF" через [HeavyHitterFilter], "ETS" через [EnhancedTransmissionSelection], "QFQ" через [QuickFairQueueing] и [QuickFairQueueingClass].
  • В systemd-networkd в секцию [DHCPv4] добавлена настройка UseGateway для отключения применения информации о шлюзе, полученной через DHCP.
  • В systemd-networkd в секции [DHCPv4] и [DHCPServer] добавлена настройка SendVendorOption для установки и обработки дополнительных опций производителя.
  • В systemd-networkd в секции [DHCPServer] реализован новый набор опций EmitPOP3/POP3, EmitSMTP/SMTP и EmitLPR/LPR для добавления информации о серверах POP3, SMTP и LPR.
  • В systemd-networkd в файлах .netdev в секции [Bridge] появилась настройка VLANProtocol для выбора используемого протокола VLAN.
  • В systemd-networkd в файлах .network в секции [Link] реализована настройка Group для управления группой линков.
  • Настройки BlackList переименованы в DenyList (для обеспечения обратной совместимости обработка старого имени сохранена).
  • В systemd-networkd добавлена большая порция настроек, связанных с IPv6 и DHCPv6.
  • В networkctl добавлена команда "forcerenew" для принудительного обновления всех привязок адресов (lease).
  • В systemd-resolved в настройке DNS появилась возможность указания номера порта и имени хоста для верификации сертификата DNS-over-TLS. В реализации DNS-over-TLS добавлена поддержка проверки SNI.
  • В systemd-resolved добавлена возможность настройки перенаправления однокомпонентных DNS-имён (single-label, из одного имени хоста).
  • В systemd-journald обеспечена поддержка применения алгоритма zstd для сжатия больших полей в журналах. Проведена работа по защите от возникновении коллизий в хэш-таблицах, применяемых в журналах.
  • В journalctl при выводе сообщений лога добавлены кликаемые URL со ссылками на документацию.
  • В journald.conf добавлена настройка Audit для управления включением аудита в процессе инициализации systemd-journald.
  • В systemd-coredump добавлена возможность сжатия core-дампов при помощи алгоритма zstd.
  • В systemd-repart добавлена настройка UUID для назначения UUID созданному разделу.
  • В сервисе systemd-homed, обеспечивающем управление переносимыми домашними каталогами, добавлена возможность разблокировки домашних каталогов при помощи токенов FIDO2. В бэкенд шифрования разделов LUKS добавлена поддержка автоматического возвращения пустых блоков файловой системы при завершении сеанса. Добавлена защита от двойного шифрования данных, если определено, что для раздела /home в системе уже применяется шифрование.
  • В /etc/crypttab добавлены настройки: "keyfile-erase" для удаления ключа после использования и "try-empty-password" для попытки разблокировки раздела с пустым паролем до запроса пароля у пользователя (полезно для установки зашифрованных образов с назначением пароля после первой загрузки, а не во время установки).
  • В systemd-cryptsetup во время загрузки реализована поддержка разблокировки разделов Microsoft BitLocker при помощи /etc/crypttab. Также добавлена возможность чтения ключей для автоматической разблокировки разделов из файлов /etc/cryptsetup-keys.d/<volume>.key и /run/cryptsetup-keys.d/<volume>.key.
  • Добавлен генератор systemd-xdg-autostart-generator для создания unit-файлов из файлов автозапуска .desktop.
  • В "bootctl" добавлена команда "reboot-to-firmware".
  • В systemd-firstboot добавлены опции: "--image" для указания дискового образа для загрузки, "--kernel-command-line" для инициализации файла /etc/kernel/cmdline, "--root-password-hashed" для задания хэша пароля root и "--delete-root-password" для удаления пароля root.
 

Источники[править]

OpenNET logo.png
Creative Commons
Эта статья содержит материалы из статьи «Выпуск системного менеджера systemd 246», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Cartoon Robot.svg
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
 

Комментарии:Выпуск системного менеджера systemd 246