Cómo programar tareas usando el comando AT en Linux
- 3678
- 443
- Sra. Lorena Sedillo
Aprender cómo programar y administrar tareas utilizando el programa AT
Requisitos
- Permisos de raíz para comenzar el demonio ATD
- Tener el programa AT instalado
Dificultad
FÁCIL
Convenciones
- # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz
directamente como usuario raíz o mediante el uso desudo
dominio - ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado
Introducción
Durante la administración de un sistema, poder programar una tarea para una ejecución posterior, es una capacidad crucial: realizar una copia de seguridad de una base de datos, o tal vez para ejecutar un script de mantenimiento. Menos conocido que cron
o anacron
, el en
Programa Hagamos esto de una manera bastante fácil: en este tutorial aprenderemos cómo usarlo y cómo es diferente de los programas mencionados anteriormente.
Que hay en?
A diferencia de Cron, que nos permitió ejecutar una tarea de forma regular, en
nos da la capacidad de ejecutar un comando o un script en una fecha y hora específicas, o después de un intervalo de tiempo determinado. Las actas, horas, días o semanas se pueden usar como unidades. Incluso es posible usar ciertas "palabras clave" como medianoche
o la hora del té
(que corresponde a 4pm).
Instalación en
Si no está instalado de forma predeterminada, en
Debería estar disponible en casi todas las distribuciones de repositorios.
Para instalarlo en Fedora, simplemente ejecute:
# Instalar DNF en
En Rhel o Centos Yum sigue siendo el administrador de paquetes predeterminado:
# yum instalación en
En Debian o Ubuntu:
# instalación de apt-get en
En Archlinux:
# Pacman -S en
Comenzando el demonio
Una vez que el programa está instalado, debemos iniciar el ATD
demonio y eventualmente habilitarlo si queremos que se lance automáticamente en el arranque. Aquí asumiré el uso de Systemd como sistema init. El comando debe ejecutarse con privilegios raíz:
# SystemCTL Enable - -Now ATD.servicio
Programando un trabajo de la solicitud AT
Con todo en su lugar, ahora podemos usar en
. Supongamos que queremos ejecutar un comando de 1 minuto a partir de ahora. La sintaxis correcta sería:
$ a ahora + 1 minuto
Para ejecutar el mismo comando a las 4pm, dentro de tres días, en cambio, ejecutaríamos:
$ a las 4pm + 3 días
Una vez que se ejecuta la línea anterior, el en
Aparecerá que aparecerá, esperando que ingresemos el comando que se ejecutará después del intervalo de tiempo especificado:
$ a ahora + 1 minutos en> echo "Hello World"> Prueba.txt en> trabajo 4 en martes 19 de diciembre 11:29:00 2017
Para salir del en
rápido deberíamos presionar el Ctrl+D
combinación de llave. En este punto, presentaremos un resumen de la tarea programada, que nos mostrará el Identificación del trabajo
(4 en este caso) y la fecha en que se ejecutará.
Justo como ejemplo, ingresamos a un comando trivial para mostrar cómo en
obras. A partir de ahora, la cadena "Hello World" se escribirá en la prueba del archivo.txt, que se creará automáticamente si ya no existe.
Programe la ejecución de un script
En lugar de especificar el comando que se ejecutará, interactivamente, a partir de la solicitud, podemos instruir en
ejecutar un script o programa existente simplemente pasándolo como un argumento al -F
bandera o, alternativamente, utilizando el <
operador de redirección. Por lo tanto, suponiendo que queramos ejecutar un script que esté presente en nuestro directorio de trabajo actual, ejecutaríamos:
# Usando la bandera -f dedicada $ en ahora + 1 minuto -f script.mierda
# Utilizando el < redirection operator $ at now + 1 minute < script.sh
Administrar trabajos programados
Para hacer cola, examinar o eliminar trabajos programados con AT, podemos usar comandos dedicados como ATRM
y ATQ
o corre en
con banderas específicas, este último es solo alias para los primeros. Por ejemplo, digamos que queremos obtener una lista de todos los trabajos pendientes programados con AT por nuestro usuario:
$ ATQ 4 martes 19 Dic 11:29:00 2017 A EGDOC
El comando anterior, si se inicia como root, mostrará la tarea programada por todos los usuarios en el sistema.
Para eliminar un trabajo en cola, podríamos usar ATRM
o corre en
Con las banderas equivalentes: -riñonal
o -d
. El trabajo a eliminar debe ser referenciado por su número. En el caso anterior, por lo tanto correríamos:
$ ATRM 4
Conclusiones
Aunque más simple que cron
o anacron
, el en
El programa puede ser muy útil en ciertas situaciones: ejecutar un programa con un retraso específico o cuando sepa exactamente el momento en que se debe ejecutar la tarea. Referencia al manual para obtener más información y agregue esta pequeña herramienta a su caja de herramientas, seguramente será útil.
Tutoriales de Linux relacionados:
- Cosas para instalar en Ubuntu 20.04
- Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
- Una introducción a la automatización, herramientas y técnicas de Linux
- Comandos de Linux: los 20 comandos más importantes que necesitas ..
- Comandos básicos de Linux
- Tutorial de Sqlite Linux para principiantes
- Ubuntu 22.04 Copia de seguridad y restauración del sistema
- Cómo imprimir el árbol de directorio usando Linux
- Archivos de configuración de Linux: los 30 principales más importantes
- ¿Puede Linux obtener virus?? Explorando la vulnerabilidad de Linux ..
- « Tutorial sobre cómo escribir reglas básicas de UDEV en Linux
- Guía básica para encriptar particiones de Linux con luks »