systemctl - это утилита по управлению сервисами в systemd.

Основные команды

Ставим сервис в автозапуск

sudo systemctl enable <service>

Ставим сервис в автозапуск и запускаем

sudo systemctl enable --now <service>

Убираем сервис из автозапуска

sudo systemctl disable <service>

Запускаем сервис

sudo systemctl start <service>

Перезапускаем сервис

sudo systemctl restart <service>

Останавливаем сервис

sudo systemctl stop <service>

Создаем маску сервиса

sudo systemctl mask <service>

Нужно для того, чтобы исключить возможность включение сервиса.

Снимаем маску сервиса

sudo systemctl unmask <service>

Какие есть особенности контекста выполнения

Если сервис запускается с именем:

sudo systemctl <command> <service>@<username>

То это значит, что сервис работает с каталогом и данными конкретного пользователя.

Чтобы сервис выполнялся от имени другого пользователя требуется выполнить команду с sudo.

Если это текущий пользователь, то sudo требуется только если для работы сервиса требуются права суперпользователя.

В противном случае можно выполнить команду с атрибутом --user и без указания имени пользователя, так как уже подразумевается, что команда выполняется в контексе текущего пользователя:

systemctl --user <command> <service>