Linux - systemctl - управление сервисами и units

Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2024
Версия от 18:31, 24 января 2017; Admin iph (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к:навигация, поиск

Linux - systemctl - управление сервисами и units

SystemD полностью поддерживает скрипты инициализации SysV, как описано в спецификации Linux Standard Base (LSB), что упрощает переход на systemd.


Посмотреть список запущенных юнитов:

# systemctl
# systemctl list-units


Основные директории в CentOS 7:

/usr/lib/systemd/system/ - юниты из пакетов RPM.
/run/systemd/system/ - юниты, созданные в рантайме. Этот каталог приоритетнее каталога с установленными юнитами из пакетов.
/etc/systemd/system/ - юниты, созданные  и управляемые системным администратором. Этот каталог приоритетнее каталога юнитов, созданных в рантайме.


Типы юнитов systemd:

.service – системный сервис
.target — группа юнитов systemd
.automount – точка автомонтирования файловой системы
.device – файл устройства, распознанного ядром
.mount – точка монтирования файловой системы
.path – файл или директория в файловой системе
.scope – процесс, созданный извне
.slice – группа иерархически организованных юнитов, управляющая системными процессами
.snapshot – сохраненное состояние менеджера systemd
.socket – сокет межпроцессного взаимодействия
.swap – Свап-устройство или свап-файл (файл подкачки)
.timer – таймер systemd


основные команды systemctl:

systemctl start name.service – запуск сервиса.
systemctl stop name.service — остановка сервиса
systemctl restart name.service — перезапуск сервиса
systemctl try-restart name.service — перезапуск сервиса только, если он запущен
systemctl reload name.service — перезагрузка конфигурации сервиса
systemctl status name.service — проверка, запущен ли сервис с детальным выводом состояния сервиса
systemctl is-active name.service — проверка, запущен ли сервис с простым ответом: active или inactive
systemctl list-units --type service --all – отображение статуса всех сервисов
systemctl enable name.service – активирует сервис (позволяет стартовать во время запуска системы)
systemctl disable name.service – деактивирует сервис
systemctl reenable name.service – деактивирует сервис и сразу активирует его
systemctl is–enabled name.service – проверяет, активирован ли сервис
systemctl list-unit-files --type service – отображает все сервисы и проверяет, какие из них активированы
systemctl mask name.service – заменяет файл сервиса симлинком на /dev/null, делая юнит недоступным для systemd
systemctl unmask name.service – возвращает файл сервиса, делая юнит доступным для systemd


Цели (Targets) в Systemd:

poweroff.target (runlevel0.target) – завершение работы и отключение системы
rescue.target (runlevel1.target) – настройка оболочки восстановления
multi–user.target (runlevel2.target, runlevel3.target, runlevel4.target) – настройка неграфической многопользовательской системы
graphical.target (runlevel5.target) – настройка графической многопользовательской системы
reboot.target (runlevel6.target) – выключение и перезагрузка системы


Просмотр всех загруженных целевых юнитов:

systemctl list-units --type target

Просмотр вообще всех целевых юнитов:

systemctl list-units --type target --all


Выключение и перезагрузка системы:

systemctl halt – останавливает систему
systemctl poweroff – выключает систему
systemctl reboot – перезагружает систему