---
name: "atd"
section: "8"
platform: "linux"
package: "at"
version: "3.2.5-5"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/atd"
---

# atd(8)

run jobs queued for later execution

## NAME

atd - run jobs queued for later execution

## SYNOPSIS

**atd** \[**-l** *load\_avg*\] \[**-b** *batch\_interval*\] \[**-d**\] \[**-f**\] \[**-s**\]

## DESCRIPTION

**atd** runs jobs queued by [**at**(1)](/at/1.md)**.**

## OPTIONS

- **-l**

  Specifies a limiting load factor, over which batch jobs should not be run, instead of the compile-time choice of 0.8. For an SMP system with *n* CPUs, you will probably want to set this higher than *n-1.*

- **-b**

  Specify the minimum interval in seconds between the start of two batch jobs (60 default).

- **-d**

  Debug; print error messages to standard error instead of using [**syslog**(3)](/syslog/3.md)**.** This option also implies **-f**.

- **-f**

  Run **atd** in the foreground.

- **-s**

  Process the at/batch queue only once. This is primarily of use for compatibility with old versions of **at**; **atd -s** is equivalent to the old **atrun** command.

## WARNING

**atd** won't work if its spool directory is mounted via NFS even if *no\_root\_squash* is set.

## FILES

*/var/spool/atd* The directory for storing jobs; this should be mode 700, owner daemon.

*/var/spool/atd* The directory for storing output; this should be mode 700, owner daemon.

*/etc/at.allow*, */etc/at.deny* determine who can use the **at** system.

## SEE ALSO

[**at**(1)](/at/1.md), [**at.deny**(5)](/at.deny/5.md), [**at.allow**(5)](/at.allow/5.md), [**cron**(8)](/cron/8.md), [**crontab**(1)](/crontab/1.md), [**syslog**(3)](/syslog/3.md).

## BUGS

The functionality of **atd** should be merged into [**cron**(8)](/cron/8.md)**.**
