I try to create a timer unit for weekly and daily backups. For example with the weekly unit, it should be executed once in a week, some minutes after login. If the unit was successful, it should shutdown and not start again until the next week. If a start of this unit was missing, it should be start again some minutes after the next login.
But for some unknown reason, the current unit starts after every login when I reboot the laptop. I am relatively sure that this timer unit is set up wrong, but unfortunately I don’t know how I can implement such a unit better with the functions mentioned above.
[Unit]
Description=Run backup weekly
Requires=backup.service
[Timer]
Unit=backup.service
OnCalendar=weekly
RandomizedDelaySec=120
Persistent=true
[Install]
WantedBy=timers.target
- the timer has no idea if it was triggered during last boot. It only has the context of “this” boot, so it will do it right after a reboot and set a timer to start the service again after a week of uptime. - So if you reboot every day, it will trigger the service every day, even though you set it to weekly in the timer. - So it’s up to your .service file to determine if it has been run this week or not. 


