GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo configurar un trabajo cron en Linux

Introducción

El demonio Cron es una utilidad integrada de Linux que ejecuta procesos en su sistema a una hora programada. Cron lee el crontab (tablas cron) para comandos y scripts predefinidos.

Al usar una sintaxis específica, puede configurar un trabajo cron para programar scripts u otros comandos para que se ejecuten automáticamente.

Esta guía le muestra cómo configurar un trabajo cron en Linux, con ejemplos.

Requisitos previos

  • Un sistema que ejecuta Linux
  • Acceso a una línea de comando/ventana de terminal (CtrlAlternativoT o CtrlAlternativoF2 )
  • Una cuenta de usuario con root o sudo privilegios

Sintaxis básica de Crontab

Cron lee los archivos de configuración para obtener una lista de comandos para ejecutar. El daemon usa una sintaxis específica para interpretar las líneas en el crontab tablas de configuración.

Para poder configurar un trabajo cron, debemos comprender los elementos básicos que componen esta sintaxis. La forma estándar de una línea crontab es la siguiente:

a b c d e /directory/command output

Entonces, las partes de un cron comando son:

1. Los primeros cinco campos a b c d e especifique la hora/fecha y la recurrencia del trabajo.

2. En la segunda sección, el /directory/command especifica la ubicación y el script que desea ejecutar.

3. El segmento final output es opcional. Define cómo el sistema notifica al usuario de la finalización del trabajo.

1. Formato de tiempo de trabajo cron

Los primeros cinco campos del comando representan números que definen cuándo y con qué frecuencia se ejecuta el comando. Un espacio separa cada posición, que representa un valor específico.

La siguiente tabla resume los valores posibles para los campos y la sintaxis de ejemplo:

2. Comando a Ejecutar

La siguiente sección especifica el comando a ejecutar. Representa el directorio exacto y el nombre de archivo de la secuencia de comandos o los comandos que desea que cron complete. Por ejemplo:

/root/backup.sh

En nuestro ejemplo, el comando busca en el directorio raíz del sistema y ejecuta backup.sh texto. Puede especificar cualquier script o comando que desee.

3. Salida (Opcional)

Por defecto, cron envía un correo electrónico al propietario del archivo crontab cuando se ejecuta. Esta es una forma conveniente de realizar un seguimiento de las tareas. Tenga en cuenta que las tareas regulares o menores pueden llenar su bandeja de entrada rápidamente.

Como esta es una función opcional, puede evitar ese escenario al deshabilitar el correo electrónico de salida. Para desactivar la salida de correo electrónico, agregue la siguiente cadena, >/dev/null 2>&1 , después de los campos de tiempo y comando.

* * * * * directory/command >/dev/null 2>&1

4. Uso de operadores (opcional)

Para mayor eficiencia, la sintaxis cron también usa operadores. Los operadores son caracteres especiales que realizan operaciones en los valores proporcionados en el campo cron.

  • Un asterisco (*) representa todos los valores. Utilice este operador para mantener las tareas en ejecución durante todos los meses o todos los días de la semana.
  • Una coma (,) especifica valores individuales separados.
  • Un guión (–) indica un rango de valores.
  • Una barra diagonal (/) se utiliza para dividir un valor en pasos. (*/2 sería cualquier otro valor, */3 sería cada tercio, */10 sería cada décimo, etc.)

Configuración de un trabajo cron

Para configurar un trabajo cron, abra crontab con un editor de texto preferido e ingrese la sintaxis del comando que desea ejecutar.

¿Cómo editar el archivo crontab?

Para abrir el archivo de configuración crontab para el usuario actual, ingrese el siguiente comando en la ventana de su terminal:

crontab –e

Puede agregar cualquier cantidad de tareas programadas, una por línea.

Una vez que haya terminado de agregar tareas, guarde el archivo y salir El demonio cron leerá y ejecutará las instrucciones proporcionadas.

Recuerde, no es necesario reiniciar Cron para aplicar los cambios.

Editar crontab para un usuario diferente

Para editar el crontab para otro usuario, ingrese el siguiente comando:

crontab –u other_username –e

Ejemplos de trabajos cron

Al especificar trabajos, utilice el asterisco para especificar todos los valores. Poner un valor en uno de los campos solo ejecuta el comando en ese valor. Por ejemplo:

* 2 0 * 4 /root/backup.sh

Aunque está configurado para ejecutarse a las 2 a. m., solo se ejecuta cuando el primer día del mes (0) cae en miércoles (4). Si cambia a lo siguiente:

* 2 0 * * /root/backup.sh

El comando se ejecuta el primero de cada mes a las 2 am. La siguiente tabla proporciona algunos comandos básicos usando /root/backup.sh archivo de nuestros ejemplos anteriores.

Campo Valores posibles Sintaxis Descripción
[a] – Minuto 0 – 59 7 * * * * El trabajo cron se inicia cada vez que el reloj del sistema muestra 7 en la posición de los minutos.
[b] – Hora 0 – 23 0 7 * * * El trabajo cron se ejecuta cada vez que el reloj del sistema muestra las 7 a. m. (7 p. m. se codificaría como 19).
[c] – Día 0 – 31 0 0 7 * * El día del mes es 7, lo que significa que el trabajo se ejecuta cada 7 días del mes.
[d] – Mes 0 =ninguno y 12 =diciembre 0 0 0 7 * El mes numérico es 7, lo que determina que el trabajo se ejecuta solo en julio.
[e] – Día de la semana 0 =domingo y 7 =domingo 0 0 * * 7 7 en la posición actual significa que el trabajo solo se ejecutaría los domingos.

Uso de caracteres especiales

Puede usar la barra oblicua para dividir una cadena de tiempo en pasos. Para ejecutar una copia de seguridad cada 15 minutos:

*/15 * * * *

El * significa todos los valores, y el /15 cuenta y repite cada 15 minutos.

Utilice el carácter de guión para especificar un rango. Para ejecutar el código todos los días de la semana a las 4 am:

0 4 * * 1-5 /root/backup.sh

En este caso, 1-5 especifica de lunes a viernes.

Use una coma para especificar instancias individuales en las que se debe ejecutar el código:

0 4 * * 2,4 /root/backup.sh

Esto ejecutaría el código a las 4 am los martes y jueves.

Algunos comodines se pueden combinar. Haga que el comando se ejecute cada dos días a los 37 minutos después de la hora:

37 1-23/2 * * * /root/backup.sh

1-23 especifica el rango de horas, /2 establece el intervalo cada dos horas.

Lista de trabajos cron existentes

Puede enumerar todos los trabajos cron en su sistema sin abrir el archivo de configuración crontab. Escriba el siguiente comando en una ventana de terminal:

crontab –l

Linux
  1. Cómo uso cron en Linux

  2. Cómo configurar un trabajo cron en TrueNAS

  3. Cómo configurar un trabajo cron en cPanel (Tutorial en video)

  4. Cómo establecer la variable $Path en Linux

  5. ¿Cómo configurar el trabajo CRON para que se ejecute cada 10 segundos en Linux?

Cómo configurar un trabajo cron en cPanel

Cómo configurar un trabajo cron en cPanel

¿Cómo configurar un Cron Job en Hostinger?

¿Qué es un trabajo cron en Linux?

Cron Vs Anacron:Cómo configurar Anacron en Linux (con un ejemplo)

Cómo configurar y ejecutar un cron en cPanel

    Trabajo de Cron Comando
    Ejecutar trabajo cron cada minuto * * * * * /root/backup.sh
    Ejecutar Cron Job cada 30 minutos 30 * * * * /root/backup.sh
    Ejecutar Cron Job cada hora 0 * * * */root/backup.sh
    Ejecutar Cron Job todos los días a medianoche 0 0 * * * /root/backup.sh
    Ejecutar Cron Job a las 2 am todos los días 0 2 * * * /root/backup.sh
    Ejecutar Cron Job cada 1 del mes 0 0 1 * * /root/backup.sh
    Ejecutar Cron Job cada 15 del mes 0 0 15 * * /root/backup.sh
    Ejecutar Cron Job el 1 de diciembre: Medianoche 0 0 0 12 * /root/backup.sh
    Ejecutar Cron Job el sábado a medianoche 0 0 * * 6 /root/backup.sh