at, cron, and anacron
Scheduling Commands and Scripts

© Lead Image © rawpixel, 123RF.com
The at command and the related cron and anacron can help you efficiently schedule tasks, whether one-time events or jobs to be done repeatedly.
Scheduling tasks is as old as Unix. Usually, it is a concern for root users, handy for making sure that jobs like backups are done regularly. However, scheduling can also be useful for regular users, if only to broadcast a message to themselves to take a break. Either way, you have three scheduling systems for your needs: at
[1] and its related commands, cron
[2], and anacron
[3]. The three overlap, but each has its own peculiarities for configuration and scheduling.
The at Family of Commands
At
and its associated commands are for scheduling of a one-time event. By default, the commands can only be run by root. However, other users can also be permitted to run at
if you create a file called /etc/at.allow
, adding names one per line. You can also add users to /etc/at.deny
if there are users whom you specifically do not want to use the commands, including users that exist for administrative purposes or users that might be created by intruders, such as guest
(Figure 1).
To schedule a command to run once, enter the command followed by a time. The time must be precise down to minutes and can be precise down to seconds using the MMDDhhmm[.ss]
format. You can also specify the fixed times midnight
, noon
, or teatime
(4pm) or a specific date followed by the time. Similarly, you can specify now
, today
, or tomorrow
, optionally adding a time after now
or today
. For instance, 5pm + 1 week
or noon August 2
would both be valid time entries. Should you enter a time that has already passed, such as 11am today
when it is 4pm, the command will be run in about five minutes.
[...]
Buy this article as PDF
(incl. VAT)