Cheatsheet Pages / systemd Cheatsheet

How to test a systemd calendar expression before you ship it — systemd-analyze calendar

Your OnCalendar expression looks right — this shows the normalized form and the actual next elapse before you rely on it.

Most management commands need sudo, and systemctl only works on a system actually booted with systemd — inside containers it fails with “System has not been booted with systemd as init system”. Every command was checked against systemd 255, and the example units pass systemd-analyze verify.

systemd-analyze calendar "Mon *-*-* 03:00"
#   Original form: Mon *-*-* 03:00
#   Normalized form: Mon *-*-* 03:00:00
#       Next elapse: Mon 2026-10-26 03:00:00 UTC   (example output — the date moves with the day you run it)
systemd-analyze calendar daily   # → Normalized form: *-*-* 00:00:00, plus its next elapse
systemd Cheatsheet one-page card — commands that actually work
The full one-page card — systemd Cheatsheet. Get the complete cheatsheet on GitHub