Після дев'яти місяців роботи, systemd 258 прибув, Нова версія системного менеджера, яка знаменує собою важливий крок у відмові від історичних компонентів та переході до більш сучасної екосистеми.
Цей реліз примітний видаленням підтримки cgroups v1 і з старі механізми управління System V, а також впровадження нових утиліт, інноваційних концепцій та покращень безпеки та продуктивності, що підсилюють його центральну роль у Linux.
Ключові нові можливості Systemd 258
Однією з найактуальніших новинок є Представляємо утиліту systemd-factory-reset, розроблений щоб ініціювати або скасувати скидання до заводських налаштувань під час наступного завантаження, з можливістю негайного перезавантаження за допомогою параметра factory-reset-now.target. Також додано параметр ядра systemd.factory_reset для запуску цього процесу під час завантаження.
Ще одна нова функція, представлена Systemd 258, полягає в тому, що стартові зони, що дозволяє створювати підкаталоги в домашньому каталозі користувача для підтримки окремих середовищ, наприклад, тестування або розробка. Ці області можна вибрати під час входу в систему за допомогою синтаксису user%area або за допомогою утиліти run0. Наразі ця функціональність обмежена systemd-homed і недоступна для повноцінних графічних сеансів.
Віддалене завантаження та нові утиліти
Systemd 258 розширює свої можливості завантаження до дозволити завантаження безпосередньо з образу диска, отриманого через HTTP, завдяки прапорцю blockdev, застосованому до параметрів systemd.pull та rd.systemd.pull. Таким чином, образ підключається до пристрою зворотного зв'язку, що забезпечує гнучкіше віддалене завантаження.
Серед нових інструментів є systemd-pty-forward, що дозволяє створювати псевдотермінали для запуску процесів та перенаправляти його вивід до вихідного терміналу, розширюючи можливості адміністрування та налагодження у складних середовищах.
Видалення застарілих компонентів
Цей реліз також знаменує остаточне прощання із застарілими технологіямиПідтримка для скасовано cgroup v1, що закріплює ексклюзивне використання cgroups v2 як стандарту управління ресурсами в Linux.
Для себеі компоненти в стилі System V видаляються, включаючи initctl, рівень запуску та telinit, а також пристрій /dev/initctl, файли рівня запуску та команду init. Хоча сервісні скрипти System V все ще працюють, їх планується видалити в майбутньому випуску.
Що стосується криптографічних бібліотек, OpenSSL встановлено як єдиний підтримуваний бекенд у systemd-resolved та systemd-importd, не враховуючи GnuTLS та libgcrypt.
Покращення послуг та конфігурацій
Systemd 258 aДодайте умову ConditionKernelModuleLoaded, що дозволяє vПеревірте, чи завантажено модуль ядра перед запуском модуляПередумова ConditionKernelVersion замінюється більш загальною ConditionVersion, яка також може перевіряти версії systemd та glibc.
У мережевій сфері, systemd-udevd додає нові властивості пристроївs, покращена підтримка налагодження та краща інтеграція з інтерфейсами Android, такими як ADB та Fastboot. Systemd-networkd, з іншого боку, додає розширені параметри конфігурації в мережах IPv4, IPv6 та MPLS, а також підтримка BOOTP у клієнті DHCPv4.
Systemd-logind додає нові класи сесій для неінтерактивних сценаріїв та сценаріїв швидкого запуску, тоді як systemd-resolved додає підтримку делегованих зон, паралельних запитів A/AAAA та можливість блокування типів записів DNS.
Завантажувач systemd-boot розвивається з підтримкою специфікацій uki та uki-url, що відкриває можливості для віддаленого завантаження образів UKI через HTTP. Також додано опцію перезавантаження при помилці для обробки збоїв завантаження.
Що нового в контейнерах та імпорті зображень?
Systemd-nspawn тепер дозволяє непривілейоване виконання образів контейнерів у звичайних каталогах, тоді як systemd-importd додає підтримку стиснутих образів у форматі zstd.
Крім того, введено параметри ядра systemd.break та rd.systemd.break, які дозволяють переривати завантаження в ключові моменти для інтерактивного налагодження.
Погляд у майбутнє systemd
Команда розробників вже очікує значних змін для наступного релізу, таких як остаточне видалення каталогу /run/lock/ та відмова від iptables на користь nftables. Також очікується збільшення мінімальних вимог до ядра Linux 5.10, glibc 2.34, OpenSSL 3.0.0 та Python 3.9.
Мінімальна версія ядра Linux, необхідна для запуску systemd 258, тепер становить 5.4, хоча рекомендується 5.7. Крім того, політику дозволів на пристроях tty/pts було змінено з 0620 на 0600, щоб запобігти запису даних користувачами однієї групи на непов'язані термінали, що посилює безпеку за замовчуванням.