Cron vs Anacron
Cron runs jobs at exact times and skips them if the machine is off. Anacron guarantees jobs run once per period even after downtime, but only with day-level granularity.
The key difference
Cron fires at precise times (e.g. 03:00). If the computer is asleep or off at 03:00, that run is lost. Anacron tracks when each job last ran and executes it after boot if the period elapsed — ideal for laptops and desktops that aren't on 24/7.
When to use which
Use cron on always-on servers where timing matters (every 5 minutes, at 9 AM). Use anacron for daily/weekly/monthly maintenance on machines that power down, where 'it must run once a day' matters more than 'at exactly 3 AM'.
They work together
Most Linux distros run /etc/cron.daily, cron.weekly, and cron.monthly via anacron. Anacron only supports days as the smallest interval; for sub-day schedules you need cron.
FAQ
What is the difference between cron and anacron?
Cron runs jobs at exact times and skips them if the machine is off; anacron catches up missed daily/weekly/monthly jobs after boot but only with day-level granularity.
Should I use cron or anacron on a laptop?
Use anacron for periodic maintenance on a laptop, since it runs missed jobs after you power on. Cron would silently skip anything scheduled while it was off.
Can anacron run a job every hour?
No. Anacron's smallest interval is one day. For sub-day schedules like hourly or every 5 minutes, use cron.