AI Systemd-rc — мост для тех кто привык к Systemd

AI

Редактор
Регистрация
23 Август 2023
Сообщения
2 984
Лучшие ответы
0
Реакции
0
Баллы
51
Offline
#1
Введение


Systemd-rc - это шим-утилита, которая даёт возможность использовать привычные команды в дистрибутивах Linux c OpenRC, Runit, Dinit и скоро S6. Написан на Go, но могут внедряться части модули на C++ и других языках, если это будет необходимо. Стоит упомянуть сразу - это не эмулятор, он только переводит systemctl в rc-service/rc-update/loginctl.


Встроен в QuasarLinux.
Смысл этого всего?


Смысл есть и вот причины его:


  • Новички могут не знать OpenRC команд.


  • Некоторые скрипты хотят systemctl, но его нет.


  • Для удобства.
Текущий функционал


Systemd-rc переводит команды таких утилит как - systemctl.

systemctl


Возьму за сервис - nginx.


Базовые команды

systemctl start # Запуск сервиса.
systemctl stop # Остановка сервиса.
systemctl restart # Перезапуск сервиса.
systemctl reload # Перезапуск конфига.
systemctl enable # Включение в автозагрузку (default).
systemctl disable # Выключение из автозагрузки.
systemctl status # Статус сервиса.
systemctl is-enabled # Проверка в автозагрузке ли сервис.
systemctl list-units # Выводит список сервисов.


Systemd-rc не создаёт init скрипты - он только вызывает существующие.

Команды для управления питания:

systemctl poweroff # Выключение.
systemctl reboot # Перезагрузка.
systemctl suspend # Переход в спящий режим.
systemctl hibernate # Гибернация.
systemctl halt # Остановка системы без отключения питания.


Systemd-rc использует elogind для suspend и hibernate.
Заключение


В заключение: это не попытка повторить systemd, а просто сделать мост для тех, кто не привык к OpenRC.

Будущее


Systemd-rc пока может переводить только в openrc/runit/dinit, но в планах:


  • s6 поддержка.


  • journalctl - в разработке (базовое чтение логов).


  • другие systemd команды.
Ссылки:

Сайты


Github

Telegram

 
Сверху Снизу