my-service.timer
Код: Выделить всё
[Unit]
Description=Runs my-service
After=network-online.target
[Timer]
OnCalendar=*:0/5
Persistent=true
[Install]
WantedBy=multi-user.target
my-service.service
Код: Выделить всё
[Unit]
Description=Executes a service
[Service]
ExecStart=/some/fancy/bash/script.sh
Restart=no
Что теперь нужно ли мне сделать, чтобы служба запускалась в указанный календарный интервал времени без перезагрузки системы?
Что я пробовал:
Код: Выделить всё
systemctl reenable --now my-service.timer- Мало что делает, включает службу, но не переводит ее в активное состояние. Я подумал, что этого должно быть достаточно, чтобы запустить таймер:
Код: Выделить всё
(base) $ status my-service.timer
○ my-service.timer - Runs my-service
Loaded: loaded (/etc/systemd/system/my-service.timer; enabled; vendor preset: disabled)
Active: inactive (dead)
Trigger: n/a
Triggers: ● my-service.service
Код: Выделить всё
systemctl enable my-service.serviceЯ попробовал
Код: Выделить всё
systemctl start my-service.timerВопросы:
- Нужен ли таймер быть запущен для запуска выполнения служебного файла?
- Почему systemctl не включается повторно --now my-service.timer запускает таймер (что, как я думал, так и будет) с флагом --now).
- Нужно ли а) включать служебный файл, который запускается только соответствующим таймером, б) запускать или в) ничего из вышеперечисленного?
- Нужно ли мне использовать systemctl deamon -reload после того, как я заменил старые файлы модулей/таймера потенциально новыми/обновленными файлами? Или достаточно просто выполнить systemctl reenable или systemctl restart (что это?).
Подробнее здесь: https://stackoverflow.com/questions/792 ... ith-timers
Мобильная версия