Как известно в большинстве современных дистрибутивов системой GNU/Linux управляет systemd, а вот управление самим systemd до сих пор сводилось к вдумчивому чтению документации и набиванию команд. Олдскульно, но не слишком удобно.
Теперь наконец появился новый, интерактивный способ управления systemd от проекта ISD — Interactive SystemD, публичный релиз 0.2.0 которого состоялся на прошлой неделе.
Фактически это TUI, позволяющий управлять как системным, так и пользовательским экземпляром systemd в интерактивном режиме: просматривать и изменять состояние сервисов, просматривать их логи и т. д.
При этом уже поддерживаются темки — посмотреть демо-ролики можно по ссылке с документацией проекта.
Представлен релиз systemd 251 — свободного (GPLv2+) системного менеджера GNU/Linux.
Основные изменения:
повышены требования к окружению (Linux kernel 4.15 c опцией CLOCK_BOOTTIME, С11 с расширениями GNU) - поскольку разработчики systemd тщательно заботятся об обратной совместимости, заголовочные файлы по-прежнему C89
sd-boot сохраняет хэш командной строки ядра по-умолчанию в TPM PCR 12 вместо PCR 8 для улучшения совместимости с Grub, который активно использует данный регистр
в Boot Loader Specification добавлен файл /loader/entries.srel с описанием формата записей в /loader/entries/directory в ESP
юниты, прибитые systemd-oomd, получат соответствующий статус oom-kill
множество Private*= и Protect*= опций теперь доступно и для пользовательского инстанса системного менеджера (при наличии user namespaces в системе)
опция LoadCredential= теперь поддерживает папки /etc/credstore/, /run/credstore/, /usr/lib/credstore/ - см https://systemd.io/CREDENTIALS/
новая команда udevadm lock позволяет получить эксклюзивный доступ к блочному устройству на время выполнения критических операций - см. https://systemd.io/BLOCK_DEVICE_LOCKING/
добавлен юнит systemd-networkd-wait-online@<interface>.service для удобного ожидания появления сети на определённом интерфейсе
новая опция сборки default-user-shell= позволяет задать пользовательскую оболочку в явном виде вместо окаянного bash
Новый релиз системного менеджера GNU/Linux — systemd (лицензия GPL-v2+):
возможность явного или автоматического выбора из нескольких root разделов в образе диска с помощью параметра --image= в systemd-nspawn, systemd-dissect и других утилитах, работающих с образами дисков
новые опциональные параметры IMAGE_VERSION и IMAGE_ID в файле /etc/os-release
поддержка build-id и .note.package из ELF в systemd-coredump позволяет явным образом соотнести дамп памяти с конкретным пакетом, из которого был установлен соответствующий бинарник
поддержка UUID для событий udev, которая позволяет отслеживать конкретное событие в явном виде
поддержка JSON с помощью интерфейса DBus и параметра командной строки в systemd-hostnamed и systemd-networkd. В дальнейшей её планируется распространить на все компоненты systemd
автоматическое добавление хэшей паролей в shadow для пользователей systemd-homed
поддержка добавления пользователей и групп с помощью конфигурационных файлов в формате JSON в /etc/userdb/, /run/userdb/, /run/host/userdb/ и /usr/lib/userdb/
расширение механизма зависимостей с помощью неконфигурируемых автоматических обратных зависимостей (OnSuccessOf для OnSuccess, UpheldBy для Upholds, OnFailureOf для OnFailure и т. п.) для упрощения отслеживания и настройки зависимостей между юнитами
по многочисленным просьбам анонимусов с LOR была документирована архитектура systemd
И множество других изменений, исправлений и улучшений.
После 6 месяцев разработки благодаря усилиям 212 человек сделавших больше 8к коммитов вышла версия 1.3.0 транзакционного пакетного менеджера и одноимённого дистрибутива системы GNU.
Основные изменения:
генерация декларативного описания установленных пакетов (manifest.scm) на основе системы, в которую пакеты были установлены вручную;
единая команда создания образов системы guix system image вместо guix system vm-image и guix system disk-image;
поддержка автоматического поиска серверов обновлений в локальной сети с помощью Avahi;
поддержка архитектуры POWER9 (в статусе technology preview).
Несмотря на триумфальное шествие по планете 5G и разговоры про неизбежность 6G старый добрый GSM и (E)GPRS по прежнему интересен энтузиастам, а местами даже актуален и активно используется.
Из интересных новшеств за почти год разработки стоит отметить:
Долгожданный (с осени прошлого года) релиз децентрализованной сети видеохостинга PeerTube v3.
PeerTube является свободной альтернативой YouTube, где любой желающий может развернуть свой сервер - как приватный, так и являющийся частью общей сети (fediverse). Это позволяет значительно повысить устойчивость сети к цензуре.
Новый релиз известного системного менеджера мира GNU/Linux — systemd.
В данном выпуске:
метки (tags) udev теперь относятся к устройству, а не к событию, связанному с устройством, — это нарушает обратную совместимость, но только для того, чтобы корректно обработать нарушение обратной совместимости, внесённое ещё в ядре 4.14;
файлы PAM для systemd-user теперь по умолчанию в /usr/lib/pam.d/ (как и должно быть с версии PAM 1.2.0) вместо /etc/pam.d/;
зависимость (runtime) от libqrencode, libpcre2, libidn/libidn2, libpwquality, libcryptsetup теперь опциональна — в случае отсутствия библиотеки соответствующая функциональность автоматически отключается;
systemd-repart поддерживает вывод в формате JSON;
systemd-dissect стал официально поддерживаемой утилитой со стабильным интерфейсом, соответственно по умолчанию теперь устанавливается в /usr/bin/ вместо /usr/lib/systemd/;
Попытка сделать вариант, доступный для использования кем-то помимо энтузиастов разработки микроядер называется SculptOS: https://genode.org/download/sculpt
В данном релизе:
полная переработка графического стека (в будущем позволит без проблем рестартовать драйвера в случае сбоя);
улучшения в интеграции Qt, позволившие частично портировать браузер Falkon (что достаточно наглядно иллюстрирует степень готовности к использованию ОС обывателями);
обновления подсистемы шифрования (написанной на SPARK/Ada!);
обновления VFS;
и множество других улучшений.
Из особенностей данного проекта можно отметить следующее:
повсеместное использование xml в качестве формата конфигурации - что может вызвать идиосинкразию у некоторых комментаторов;
эталонный уровень написания release notes и документации — если бы все открытые проекты придерживались подобных стандартов жизнь была бы легка и удивительна.
В целом проект радует регулярными релизами, активно и планомерно развивается и выглядит очень перспективным в качестве альтернативы GNU/Linux в светлом микроядерном будущем. Увы, отсутствие порта Emacs демотивирует автора новости от попыток познакомится с наработками проекта глубже, чем чтение документации.
Долгожданный (кроме шуток - процесс релиза настолько затянулся что про это начали хохмить даже сами разработчики в рассылке emacs-devel) релиз системы исполнения emacs-lisp, реализующей редактор текста, файловый менеджер, почтовый клиент, систему установки пакетов и множество различных функций.
В данном выпуске:
встроенная поддержка чисел целых чисел произвольного размера (в Emacs встроен великолепный калькулятор с поддержкой RPN и алгебраических вычислений)
встроенная поддержка JSON
для рендеринга шрифтов теперь используется библиотека HarfBuzz
добавлена поддержка табов
работа с изображениями без использования ImageMagick
Lexical-binding используется по-умолчанию (если вы не писали на Lisp данный пункт можно смело игнорировать)
поддержка дополнительного конфига для ранней инициализации (это может быть интересно пользователям spacemacs)
поддержка спецификаций XDG на размещение файлов в домашней директории (наконец-то!)
Лично меня особенно радует последний пункт, хотя изменения и не ограничиваются перечисленным.
Ценители архи-боянов приглашаются в комментарии - делать ставки кто первый «пошутит» про отсутствие в GNU/Emacs текстового редактора: когда ещё доведётся услышать шутку, которая старше большинства посетителей ЛОРа?
Не нуждающийся в представлении системный менеджер для GNU/Linux подготовил очередной релиз за номером 246.
В этом выпуске:
автоматическая загрузка правил безопасности AppArmor
поддержка проверки шифрования диска в юнитах с помощью ConditionPathIsEncrypted=/AssertPathIsEncrypted=
поддержка проверки переменных окружения ConditionEnvironment=/AssertEnvironment=
поддержка проверки цифровой подписи раздела (dm-verity) в .service юнитах
возможность передачи ключей и сертификатов через сокеты AF_UNIX без необходимости сохранения в файл
дополнительный спецификаторы в шаблонах юнитов для различных параметров из /etc/os-release
убрана поддержка .include из юнит файлов (была объявлена устаревшей 6 лет назад)
убрана поддержка недокументированных вариантов syslog и syslog-console для StandardError=/StandardOutput= в юнитах - вместо этого используются современные опции journal и journal+console
автоматические ограничения на размер всех tmpfs монтируемых самим systemd (/tmp, /run…)
дополнительные опции для systemd из команды загрузки ядра
От себя добавлю что релиз выглядит не столь новаторским как прошлый, добавивший systemd-repart, systemd-homed и userdb. Просто множество различных улучшений, удобств и исправлений.
Новый релиз пожалуй самого известного из свободных системных менеджеров.
Наиболее интересные (на мой взгляд) изменения в данном выпуске:
systemd-homed - новый компонент, позволяющий прозрачно и удобно управлять шифрованными домашними директориями, обеспечивающий переносимость (нет необходимости заботиться о разных UID на разных системах), безопасность (бэкэнд по-умолчанию LUKS) и возможность миграции на свежеустановленные системы копированием одного файла. Во всех подробностях рассказано в https://media.ccc.de/v/ASG2019-164-reinventing-home-directories
systemd-userdb - новый компонент, без которого нельзя было реализовать предыдущий сервис. Расширяемая база данных пользователей в JSON формате, заменяющая (в светлом будущем) и дополняющая (начиная с данного релиза) формат /etc/passwd
пространства имён для systemd-journald - теперь можно запустить отдельную копию демона журнала (со своими лимитами, политиками и т. п.) и использовать её для группы процессов
улучшения в поддержке SELinux
опция ProtectClock= для защиты системного времени от модификации, аналог ProtectSystem= и прочих Protect опций
множество улучшений в systemd-networkd в плане гибкости настройки маршрутов, QoS и т. д.
основательно переделан сайт https://systemd.io/ - теперь отличная документация сразу под рукой
новый логотип от Тобиаса Бернарда
И множество других изменений, который наверняка пройдут незамеченными на фоне оживлённой дискуссии по поводу homed и userd :)