
5분마다 systemd.timer 장치를 통해 systemd.service로 명령을 (일관되게) 시작하고 싶습니다. ".service" 파일만 잘 작동합니다. 그러나 타이머 장치에 의해 시작되면 여러 번 실행되고 다음 오류와 함께 중지됩니다: 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
실행이 여러 번 중지되었습니다.