this post was submitted on 04 Feb 2026
17 points (94.7% liked)

Linux Questions

3731 readers
61 users here now

Linux questions Rules (in addition of the Lemmy.zip rules)

Tips for giving and receiving help

Any rule violations will result in disciplinary actions

founded 2 years ago
MODERATORS
 

I am trying to create some systemd units that are supposed to start scripts at certain intervals. With Cron, I used an expression like 0 3 */7 * * to start a job every 7 days at 3 a.m. That worked great. With OnCalendar, I have no idea how to implement "every 7 days". Or can I use OnUnitActiveSec here? Additional problem: The computer is not always on at the specified time. The job should therefore be repeated as soon as the computer is available again. I have set Persistent=true for this purpose. However, I suspect that OnUnitActiveSec is reset every time I restart the computer. Or does OnUnitActiveSec refer to the time when the unit was activated with systemctl enabled test.timer?

you are viewing a single comment's thread
view the rest of the comments
[โ€“] MoLoPoLY@discuss.tchncs.de 2 points 1 day ago (1 children)

It seems that this doesn't work as expected. Please see my new post from today. I have found also the following issue https://github.com/systemd/systemd/issues/3107. According to this, a monotonic timer doesn't survive a reboot or power off. Please correct me, if I'm wrong.

If I understand this correctly, only a onCalendar type can be used here. That's a little bit annoying, but as of yet, I haven't found a way around this.

[โ€“] HelloRoot@lemy.lol 1 points 14 hours ago

oh shit thats really weird systemd design...