Это старая версия документа!
#Управление службами через SYSTEMCTL в Linux ##Systemctl
Systemd — система инициализации служб.
Systemctl — утилита для управления службами . ##Состояния службы
- loaded - файл конфигурации юнита был обработан;
- active (running) - служба запущена с одним или несколькими выполняющимися процессами;
- active (exited) - единовременная настройка завершена успешно;
- active (waiting) - служба запущена, но ожидает событие;
- inactive - служба не запущена;
- enabled - служба будет запускаться во время начальной загрузки системы;
- disabled - служба не будет запускаться во время начальной загрузки системы;
- static - служба не может быть включена, но может быть автоматически запущен включенным юнитом.
##Управление службами
`systemctl status <service-name>` отображение состояния службы `systemctl status rsyslog.service -l <service-name>` отображение подробного состояния службы `systemctl stop <service-name>` остановка службы `systemctl start <service-name>` запуск службы `systemctl restart <service-name>` перезапуск службы `systemctl reload <service-name>` перезагрузка конфигурации службы `systemctl daemon-reload` перезагрузка конфигурации всех служб `systemctl enable <service-name>` включение автозапуска `systemctl disable <service-name>` выключение автозапуска `systemctl mask <service-name>` отключение возможности запуска службы `systemctl unmask <service-name>` включение возможности запуска службы `systemctl enable --now <service-name>` запуск службы и включение автозапуска `systemctl disable --now <service-name>` остановка службы и включение автозапуска
##Список служб
systemctl без параметров выводит состояние всех юнитов --type=service вывод состояния юнитов указанного типа list-units список юнитов, которые добавлены в systemd list-units --type=service вывод списка всех загружаемых служб list-units --type=service --all вывод списка всех служб list-unit-files --type=service вывод списка служб и их состояние (кратко) is-active <service-name> проверка, активна ли служба is-enabled <service-name> проверка, включен ли автозапуск --failed --type=service вывод списка только отказавших служб list-dependencies <service-name> вывод списка зависимостей службы list-dependencies <service-name> --reverse вывод списка служб, которые зависят от указанной
##Target
Target группирует другие юниты и может запускать и останавливать их все вместе.
При запуске системы используется graphical.target (для загрузки системы с графическим интерфейсом) или multi-user.target (для загрузки системы без графического интерфейса). Символическая ссылка /etc/systemd/system/default.target указывает на нужный target.
Для проверки текущего default.target используется команда: `systemctl list-dependencies default.target`
Вывод таргета по умолчанию: `systemctl get-default` эта команда читает символическую ссылку, расположенную в /etc/systemd/system/default.target, и отображает результат.
Смена текущего target: `systemctl isolate <target-name>.target`
##Создание юнита
Файлы юнитов содержатся в каталоге `/etc/systemd/system`
Для создания юнита нужно создать файл, например `touch test.service` и записать в файл следующее:
``` [Unit] Description=1c-server
[Service] ExecStart=/etc/init.d/srv1cv83
[Install] WantedBy=multi-user.target ```
