Skip to content
cronhelp.me

Lint rules

Thirteen checks for the mistakes cron lets you make silently. Each has a permanent page you can cite.

ErrorSchedule that can never runnever-fires
Every selected day-of-month / month combination is an impossible date.
ErrorStep larger than the fieldstep-invalid
A step is zero or larger than the field's range, e.g. */90 in minutes.
WarningDay of month that some months never reachdom-unreachable-months
The day-of-month resolves to 29, 30 or 31, which not every month has.
WarningDay-of-month and day-of-week both restricteddom-dow-both
Both the day-of-month and day-of-week fields are set (neither is *).
WarningEvery minute on a restricted daystar-minute-restricted
Minute and hour are both * while a date field is restricted.
WarningFixed time inside a daylight-saving transitiondst-ambiguous
The hour resolves into 01:00–03:00 with a fixed minute, in a time zone that observes DST.
WarningRange that wraps past the end of the fieldrange-wrap
A range has a start greater than its end, e.g. 22-2 in hours or FRI-MON.
InfoExtreme frequencyfreq-extreme
The schedule fires every minute across the board, or exactly once a year.
InfoFires only on February 29thleap-day-only
The day resolves to only the 29th and the month to only February.
InfoNon-portable shortcutnonportable-shortcut
The expression uses @reboot, or another @shortcut that varies across schedulers.
InfoRedundant term in a fieldredundant-term
A field repeats a value, contains a value already covered, or mixes * with a list.
InfoStep that resets at the field boundarystep-uneven
A step does not divide its field evenly, so the interval jumps at the boundary.
InfoSunday written as 7dow-sunday-7
The day-of-week field uses 7 for Sunday.