at, cron, and anacron

Scheduling Commands and Scripts

© Lead Image © rawpixel,

© Lead Image © rawpixel,

Article from Issue 225/2019

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.


Use Express-Checkout link below to read the full article (PDF).

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Command Line: at and cron

    The cron and at utilities help automate processes on a Linux system. You can set up automatic backups or even wake up in the morning with a track from your MP3 collection.

  • Command Line: Calendar Tools

    We take a spin through several personal calendar apps that you can manage from the command line.

  • Admin Workshop: Finding Files

    Modern computers with their multiple Gigabyte hard disks store thousands of files. A lost file can cause a lot of work,and it can also pose a security risk. Fortunately,Linux has some versatile tools for finding those “lost files.”

  • Charly's Column

    While cron doggedly keeps to a fixed schedule, Incron monitors directories and runs commands when changes occur.

  • Open Source Job Scheduler

    Planning and scheduling jobs can mean a lot of work, especially if they are spread across multiple machines. Here's a tool to make that task a lot easier.

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95