Atd es un demonio que permite introducir órdenes con la orden at en un cola para su ejecución en un instante determinado. A diferencia de cron no es una ejecución periódica sino una ejecución única.
El demonio atd se inicia o se detiene como cualquier otro servicio del sistema de la distribución correspondiente, por ejemplo:
/etc/rc.d/initd/atd start|stop|restart
aunque lo habitual es que se lance automáticamente al arrancar el sistema operativo.
Los ficheros de las distintas colas de los distintos usuarios se almacenan en el directorio /var/spool/at.
Cada usuario puede tener y gestionar sus propias colas de ejecución, aunque hay dos ficheros, /etc/at.allow y /etc/at.deny donde se pueden poner restricciones. En caso de existir el fichero /etc/at.allow, sólo los usuarios incluidos en este fichero podrán disponer de una cola propia. Si no existe /etc/at.allow pero sí existe un fichero /etc/at.deny, cualquier usuario incluido en este último fichero no podrá disponer de cola propia.
Las colas disponibles van desde la a a la z y desde la A a la Z. La cola predeterminada es la a. La cola b se utiliza como cola de ejecución cuando la carga del sistema es baja.
Para introducir un fichero en una cola de ejecución tenemos que usar la orden at:
at [-q cola] [-f fichero] [-m] instante
-q indica la cola
-f el fichero de la órdenes
-m envía un correo de confirmación de la ejecución.
El instante se puede especificar de diversas formas, por ejemplo HH:MM para indicar una hora y minutos, now + 3 hours para indicar dentro de tres horas, como 8pm Feb 1 para indicar el uno de febrero a las 8 de la tarde.
El demonio atd tiene dos órdenes para poder gestionar las colas de procesos:
Mostrar la cola
atq [-q cola]
muestra el contenido de las colas, o de alguna en concreto si la especificamos con la opción -q.
atq es equivalente a poner at -l.
Por ejemplo
# atq 2 2001-12-10 15:16 a root 3 2001-12-15 21:00 a root 4 2001-12-15 19:30 a root 5 2001-12-12 13:16 a root 6 2001-12-14 10:15 a root
Nos indicaría que hay 5 trabajos en espera de ejecución, todos ellos en la cola a y propiedad de root. El número de trabajo aparece a la izquierda.
La opción -l de at es equivalente a atq.
Para eliminar un trabajo de la cola tenemos
atrm número número …
y elimina los trabajos encolados con esos números.
La opción -d de at es equivalente a atrm.