Если вы видите что-то необычное, просто сообщите мне. Skip to main content

Запуск скрипта в качестве службы systemd

Создаем скрипт runsmth.sh для выполнения команд в вечном цикле:

#!/bin/bash

#Строчки указаны для примера, если требуется указание переменных
export SMTH_CONFIG_FILE=/home/admin/.smth/config
export SMTH_CREDENTIALS_FILE=/home/admin/.smth/credentials

while true
do
 ls /home/$USER
 sleep 10
done

Создаем файл для systemd:

sudo vim /lib/systemd/system/smth.service

и вносим в него следующее содержание:

[Unit]
Description=script to do smth

[Service]
ExecStart=/home/admin/runsmth.sh

[Install]
WantedBy=multi-user.target

Перезагружаем настройки systemd:

sudo systemctl daemon-reload

Стартуем сервис systemd:

  • Чтобы каждый раз включался при загрузке:
sudo systemctl enable smth.service -now
  • Просто запустить сервис, при перезагрузке не запуститься:
sudo systemctl start smth.service

Проверяем состояние запущеного сервиса:

sudo journalctl -f -n 10 -u  smth.service