Создание сервиса systemd
Версия от 13:07, 31 мая 2022; Petr-akhlamov (обсуждение | вклад)
Если Вам необходимо создать автозапуск приложения на уровне systemd/сделать службу (сервис), вы можете выполнить следующие действия:
# cd /etc/systemd/system
# mcedit x11vncsrv.service
Вводим в текстовом редакторе:
[Unit] # описание Description=X11VNC Server # здесь используется ключи времени с указанием цели или другой службы After=prefdm.service [Service] # от какого пользователя запускать службу, не обязательно User=root # перезапуск службы, не обязательно Restart=on-failure #выполняемая команда ExecStart=/usr/bin/x11vnc -auth /var/run/lightdm/root/:0 -dontdisconnect -usepw -noxfixes -shared -forever -rfbport 5900 -rfbauth /root/.vnc/passwd [Install] # здесь используется ключи времени с указанием цели или другой службы WantedBy=graphical.target
# systemctl daemon-reload
# systemctl enable x11vncsrv
Ключи времени
- Wants, Requires или Before.
- (Ожидает, Требует, Перед)
- WantedBy, RequiresBy или After.
- (Ожидается целью/службой, Требуется цели/службе, После цели/службы)
Параметры перезапуска службы
- no - никогда
- always - всегда
- on-success - успешно
- on-failure - не успешно
- on-abnormal - не нормальный
- on-abort - при прирывании
- on-watchdog - Сторожевой таймер (Watchdog timer) — аппаратно реализованная схема контроля над зависанием системы. Представляет собой таймер, который периодически сбрасывается контролируемой системой. Если сброса не произошло в течение некоторого интервала времени, происходит принудительная перезагрузка системы.
Restart settings/Exit causes | no | always | on-success | on-failure | on-abnormal | on-abort | on-watchdog |
---|---|---|---|---|---|---|---|
Clean exit code or signal Корректый код выхода или сигнал |
X | X | |||||
Unclean exit code Неккоректный код выхода |
X | X | |||||
Unclean signal Некорректный сигнал |
X | X | X | X | |||
Timeout | X | X | X | ||||
Watchdog Сторожевой таймер |
X | X | X | X |
Список целей
- default.target - модуль по-умолчанию
- graphical.target - запуск графической подсистемы
- multi-user.target - запуск консоли
- network-online.target - ожидание подключенной сети (используется в Wants)
- network.target - сеть
- network-pre.target - запуск до настройки сети (используется в Requires)
- boot-complete.target - успешная загрузка [i]