Содержание
SystemD - самая распространенная система инициализации и не только, поставляемая в дистрибутивах Linux.
Упавление сервисами
systemctl <subcommand> [...]
Подкоманда | Описание |
---|---|
start | Запуск сервиса |
stop | |
restart | |
status | |
enable | |
disable | |
daemon-reload |
Создание юнитов (сервисов)
Каждый юнит состоит из блоков.
[Unit]
[Service]
[Install]
Блок [Unit]
Директивы …
Наименование | Описание |
---|---|
Description | Человеко-читаемое наименование юнита |
Requires | Список обязательных юнитов, которые должны быть активированы для создаваемого |
Wants | Список второстепенных активированных юнитов, от которых зависит создаваемый юнит |
Before | Список юнитов, запуск которых не произойдет, пока создаваемый не будет успешно запущен |
After | Список юнитов, которые должны быть запущены до создаваемого |
Conflict | Список юнитов, которые будут конфликтовать с создаваемым на этапе активации |
Блок [Service]
Наименование | Описание |
---|---|
WorkingDirectory | Для сервиса при запуске определяется рабочий каталог (pwd), в котором процесс сервиса может взаимодействовать с файлами |
ExecStart | Путь до исполняемого файла, запускаемый при команде start для сервиса |
Restart | Установка переодичности перезапуска сервиса при ошибке исполнения основного отслеживаемого процесса сервиса |
Type | Классификация сервиса |
Директива Restart блока
Директива Type блока
- simple - основной процесс сервиса не создает дочерние (non-fork);
- forking - противоположный по смыслу simple;
- idle - сервис будет ожидать завершение приоритетных сервисов, прежде, чем запустится;
- oneshot - основной процесс сервиса не цикличен, указывает системе инициализации, что требуется ожидать его завершения;
- notify - процесс сервиса уведомит систему инициализации (?) после завершения работы, чем-то схож с работой oneshot;
- dbus -
Блок [Install]
Журналирование
journalctl [-xeu]
software/administration/linux/init_systems/systemd.txt · Последнее изменение: 2024-10-06 13:53 — Иван Солнцев