PDA

Просмотр полной версии : Системный менеджер InitWare, форк systemd, портирован для OpenBSD


Suicide
04.08.2021, 21:40
Проект InitWare (https://github.com/InitWare/InitWare), развивающий экспериментальный форк системного менеджера systemd (http://www.freedesktop.org/wiki/Software/systemd), реализовал (https://github.com/InitWare/InitWare/commit/e47fae8782b0f152101a75c5ef27510eefc51828) поддержку (https://github.com/InitWare/InitWare/pull/18) операционной системы OpenBSD на уровне возможности управления пользовательскими сервисами (user manager (https://www.freedesktop.org/software/systemd/man/user@.service.html) - режим "iwctl --user", позволяющий пользователям управлять собственными сервисами). PID1 и системные сервисы пока не поддерживаются. Ранее аналогичная поддержка была обеспечена для DragonFly BSD, а возможность управления системными сервисами и управления входом для NetBSD и FreeBSD. Следующим шагом станет (https://github.com/InitWare/InitWare/wiki/Support-Matrix) реализация поддержки управления пользовательскими сервисами для Illumos.

https://www.opennet.ru/opennews/pics_base/0_1628060674.png (https://i.imgur.com/RAAK7fS.png)

Проект InitWare нацелен (https://github.com/InitWare/InitWare/wiki/Roadmap) на создание переносимого и модульного системного менеджера, способного работать на системах, отличных от Linux. При этом в отличие от systemd проект не пытается охватить необъятное и сосредотачивается только на функциях управления сервисами, пользовательскими сеансами и управлением входом (login management). Из состава исключены (https://github.com/InitWare/InitWare/wiki/Dropped-components) компоненты для управления устройствами (udev), настройки сети (networkd), резолвинга в DNS (resolved) и ведения логов (journald).

В InitWare пытаются сохранить высокий уровень совместимости с ключевыми сущностями systemd, такими как unit-файлы, команды systemctl и loginctl (в InitWare - iwctl и iwloginctl), процесс systemd1, API sd_notify и D-Bus-интерфейс управления входом. Для интерфейсов, специфичных для Linux, которые невозможно воспроизвести в других ОС, по возможности реализуется поддержка аналогов, например, вместо пространства имён и cgroups во FreeBSD для изоляции применяется механизм jail, а для отслеживания состояния процессов KQueue (к каждому процессу прикрепляется фильтр событий PROC). Из-за системных различий полной совместимости добиться не получается, но в качестве одной из целей называется возможность запуска без изменений или с минимальными изменениями большинства unit-файлов systemd.

04.08.2021

https://www.opennet.ru/opennews/art.shtml?num=55588​