
systemd — це набір демонов системного адміністрування, бібліотек і інструментів, розроблених як платформа центрального адміністрування та налаштування для взаємодії з ядром операційної системи Linux.
Після п'яти місяців розвитку, запуск нова версія systemd 254, в якому однією з головних новинок є сумісність із режимом м’якого перезапуску, а також нова утиліта для перевірки рівня заряду акумулятора, покращень, виправлень тощо.
У цій представленій новій версії systemd 254, як ми вже згадували, однією з головних новинок є підтримка режиму м'якого перезавантаження, який спричиняє перезавантаження лише компонентів простору користувача без торкання ядра Linux. У новому режимі при перезавантаженні не застосовуються етапи ініціалізації обладнання, виклику завантажувача, запуску і завантаження ядра, ініціалізації драйвера, завантаження мікропрограми і обробки initrd, що дозволяє істотно прискорити перезавантаження і скоротити час простою при оновленні середовищ з використанням готові образи системи.
Новий режим дозволяє зупинити всі процеси в просторі користувача, потім замінити кореневий образ FS новою версією та почати процес завантаження системи без перезавантаження ядра.
Інші зміни, які виділяються в новій версії, це утиліта systemd-battery-check для перевірки рівня заряду батареї. Утиліту можна запустити на ранній стадії завантаження, щоб запобігти запуску системи з дуже низьким рівнем заряду батареї.
Для обслуговуючих блоків пропонуються налаштування MemoryPressureWatch і MemoryPressureThresholdSec, що дозволяють контролювати логіку використання підсистеми PSI (Інформація про зупинку тиску) у зв’язку з окремими послугами. PSI надає інформацію про час очікування різних ресурсів для точної оцінки рівня завантаження системи, дозволяючи визначити початок затримок через брак ресурсів і вибірково припинити інтенсивні ресурси.
Крім цього, наголошується, щоі додав конфігурацію КоріньЕфемер, що дозволяє використовувати в сервісах, де встановлені параметри Кореневий образ і кореневий каталог, тимчасові копії образу диска або дерева каталогів, які створюються за допомогою btrfs і знімків btrfs/xfs reflink-y під час запуску служби та видаляються після зупинки служби.
Ми також можемо це знайти до утиліти systemd-analyze додано команду "fdstore". для відображення вмісту сховища дескрипторів файлів, пов’язаного з диском (використовується для перезапуску служб без збереження стану; дескриптори файлів зберігаються у fdstore перед виходом і відновлюються під час запуску).
Крім того, для systemd-resolved параметр StateRetentionSec додано до resolve.conf, що дозволяє довше кешувати записи DNS вказуються через TTL і використовуються, якщо вихідний сервер DNS перестає відповідати. Для перегляду вмісту кешу DNS до утиліти resolvectl додано команду «show-cache».
З інших змін, які виділяються в цій новій версії:
- Додано опцію «–when» до команд перезавантаження, kexec, завершення роботи та зупинки в утиліті systemctl, щоб ви могли вибрати, коли перезавантажувати або зупиняти.
- Додано параметри «–fd» і «–fdname» до утиліти systemd-notify для надсилання довільних дескрипторів файлів диспетчеру служб.
- Додано параметр «–exec» для запуску вказаної команди після надсилання повідомлення.
- Додано команду «systemctl list-paths» для відображення всіх активних одиниць шляху, подібно до команд «systemctl list-timers» і «systemctl list-sockets».
- Додано можливість для модулів установлювати параметри початкової пам’яті (Startup*, наприклад StartupMemoryMax), яка використовується подібно до параметрів початкового процесора та вводу-виводу (StartupCPUWeight тощо).
- Процес PID автоматично завантажує модулі virtio_console і virtio-vsock для віртуальних машин.
- Для сервісних підрозділів додано налаштування DelegateSubgroup, яке дозволяє розміщувати служби в існуючих підгрупах замість створення окремої батьківської контрольної групи для служби.
- До утиліти systemctl додано команду «whoami», щоб відобразити назву диска, з яким пов’язано вказаний PID.
- Додано параметр «–list-cvm» у systemd-detect-virt, щоб отримати список конфіденційних віртуальних машин.
- Сценарій встановлення ядра було переписано мовою C.
Нарешті, якщо ви хочете дізнатись більше про це, ви можете проконсультуватися з подробиці за наступним посиланням.