[systemd-devel] When will my timer next run?

Zbigniew Jędrzejewski-Szmek zbyszek at in.waw.pl
Sat Aug 31 09:06:33 UTC 2019


On Fri, Aug 30, 2019 at 06:04:22PM -0700, Kenneth Porter wrote:
> I've created my service timer with the following:
> 
> [Timer]
> # wait a bit after boot to let our victim catch up with its work
> OnBoot=13m

This needs to be OnBootSec=13m. (systemd-analyze verify is your friend
in cases like this.)

> # let the victim get some work done between backups
> # we use inactive to prevent back-to-back backups if they run long
> OnUnitInactiveSec=1h
> 
> I then run list-timers but all the time columns for my service are
> n/a. I want my backup to run with an hour between backups, and with
> a pause after boot to let all the machines come up and finish
> overdue work from any long power outage. I started the timer unit
> and then see this:
> 
> # systemctl  list-timers
> NEXT                         LEFT          LAST PASSED
> UNIT                         ACTIVATES
> n/a                          n/a           n/a
> n/a rsync-Saruman.timer          rsync-Saruman.service

So... your timer has (after the invalid "OnBoot=" is ignored), only
OnUnitInactiveSec=1h. After this timer unit is started, it is never
scheduled. I would expect it to be scheduled 1h after the unit was
started. So this seems to be bug to me. If you agree, please open
an issue on https://github.com/systemd/systemd/issues/ so we can
track this.

Zbyszek


More information about the systemd-devel mailing list