Systemd Service/Timer — служба Oneshot с таймером выполняется несколько раз и завершается сбоем из-за «превышения начального лимита»

Systemd Service/Timer — служба Oneshot с таймером выполняется несколько раз и завершается сбоем из-за «превышения начального лимита»

Я хочу запускать команду (unison) каждые 5 минут как systemd.service через модуль systemd.timer. Файл '.service' сам по себе работает нормально. Однако когда он запускается модулем timer, он запускается несколько раз и останавливается с этими ошибками: Start request repeated too quickly.и Failed with result 'start-limit-hit'. Но почему?

Я запускаю службу таймера так: systemctl --user start service.timer.

Файлы находятся в: $HOME/.config/systemd/user/.

синхронизация.сервис

[Unit]
Description=Sync Service

[Service]
Type=oneshot
ExecStart=/bin/zsh -l -c "unison -batch %u"
ExecStartPost=/bin/zsh -l -c 'dunstify "sync ~"'

[Install]
WantedBy=graphical.target

синхрон.таймер

[Unit]
Description=Timer for Sync Service

[Timer]
OnCalendar=*-*-* *:0/5:*
AccuracySec=5s

[Install]
WantedBy=timers.target

Команда unison синхронизируется по сети с сервером через ssh с защищенным паролем ключевым файлом. ssh-agentЭкземпляр запущен пользователем. Вот почему мне приходится использовать оболочку входа: zsh -l -c "...".

решение1

Для справки: OnCalendar=*-*-* *:0/5:*это просто неправильно. OnCalendar=*-*-* *:0/5:00останавливает множественное выполнение.

Связанный контент