Cron Vs Anacron: Cómo programar trabajos usando Anacron en Linux

Cron Vs Anacron: Cómo programar trabajos usando Anacron en Linux

En este artículo, explicaremos cron. y anacron. y también le mostraremos cómo configurar anacron en Linux. También cubriremos una comparación de estas dos utilidades.

Para programar una tarea en un momento determinado o posterior, puede usar ‘ en. o ‘ lote. ‘y para configurar los comandos para que se ejecuten repetidamente, puede emplear las funciones cron. y anacron.

Cron-es un demonio utilizado para ejecutar tareas programadas como copias de seguridad del sistema, actualizaciones y muchas más. Es adecuado para ejecutar tareas programadas en máquinas que se ejecutarán continuamente las 24 horas, los 7 días de la semana, como los servidores.

Los comandos/tareas se escriben en trabajos cron que se programan en archivos crontab. El archivo crontab del sistema predeterminado es /etc/crontab. pero cada usuario también puede crear su propio archivo crontab que puede ejecutar comandos en los momentos que el usuario defina.

Para crear un archivo crontab personal crontab, simplemente escriba lo siguiente:

$ crontab-e

Cómo configurar Anacron en Linux

freestar.config.enabled_slots.push (LocationName: “tecmint_incontent”, slotId: “tecmint_incontent” );

Anacron. se utiliza para ejecutar comandos periódicamente con una frecuencia definida en días. Funciona un poco diferente de cron. asume que una máquina no estará encendida todo el tiempo.

Es apropiado para ejecutar trabajos programados diarios, semanales y mensuales normalmente ejecutados por cron, en máquinas que no funcionarán 24 horas al día, 7 días a la semana, como computadoras portátiles y equipos de escritorio.

Suponiendo que tiene una tarea programada (como un script de respaldo. que se ejecutará con cron cada medianoche, posiblemente cuando esté dormido, y su computadora de escritorio/computadora portátil esté en ese momento. Su secuencia de comandos de copia de seguridad no se ejecutará.

Sin embargo, si utiliza anacron. puede estar seguro de que la próxima vez que vuelva a encender la computadora de escritorio/portátil, la secuencia de comandos de copia de seguridad

Cómo funciona Anacron en Linux

Los trabajos de anacron se enumeran en /etc/anacrontab. y los trabajos se pueden programar usando el formato siguiente (comentarios dentro El archivo anacrontab debe comenzar con #. .

período de retraso comando identificador de trabajo

Desde el formato anterior:

  • período : Esta es la frecuencia de ejecución del trabajo especificada en días o como @daily, @weekly o @monthly una vez al día, a la semana o al mes. También puede usar números: 1-diario, 7-semanal, 30-mensual y N-número de días.
  • retraso. es la cantidad de minutos que debe esperar antes de ejecutar un trabajo.
  • ID de trabajo. es el nombre distintivo del trabajo escrito en los archivos de registro.

Para ver archivos de ejemplo, escriba :

$ ls-l/var/spool/anacron/ total 12-rw——-1 raíz raíz 9 1 de junio 10:25 cron.daily-rw——-1 root root 9 27 de mayo 11:01 cron.monthly-rw——-1 root root 9 30 de mayo 10:28 cron.weekly

  • comando. es el comando o script de shell que se ejecutará.

Esto es lo que sucede prácticamente:

  • Anacron verificará si un trabajo se ha ejecutado dentro del período especificado en el campo de período . De lo contrario, ejecuta el comando especificado en el campo de comando después de esperar el número de minutos especificado en el campo de retraso.
  • Una vez que se ha ejecutado el trabajo, registra la fecha en un archivo de marca de tiempo en el /var/spool/anacron. con el nombre especificado en el campo job-id (nombre del archivo de marca de tiempo).

Veamos ahora un ejemplo. Esto ejecutará el script /home/aaronkilik/bin/backup.sh. todos los días:

@daily 10 example.daily/bin/bash/home/aaronkilik/bin/backup.sh

Si la máquina está apagada cuando se espera que se ejecute el trabajo backup.sh. anacron lo ejecutará 10 minutos después de que la máquina se encienda sin tener que esperar otros 7 días.

Hay dos variables importantes en el archivo anacrontab que debe comprender:

  • START_HOURS_RANGE. establece el intervalo de tiempo en el que se iniciarán los trabajos (es decir, ejecutar los trabajos durante solo las siguientes horas).
  • RANDOM_DELAY. esto define el retraso aleatorio máximo agregado al retraso definido por el usuario de un trabajo (por defecto es 45).

Así es como posiblemente se vería su archivo anacrontab.

Anacron-/etc/anacrontab N. ° de archivo/etc/anacrontab: archivo de configuración para anacron N. ° Consulte anacron (8) y anacrontab (5) para obtener más detalles. SHELL =/bin/sh PATH =/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin HOME =/root LOGNAME = root # Estos reemplazan las entradas de cron 1 5 cron.daily run-parts–report/etc/cron.daily 7 10 cron.weekly run-parts–report/etc/cron.weekly @monthly 15 cron.monthly run-parts–report/etc/cron. mensual @daily 10 example.daily/bin/bash/home/aaronkilik/bin/backup.sh

La siguiente es una comparación de cron. y anacron. para ayudarlo comprender cuándo usar cualquiera de ellos.

Cron Anacron Es un demonio No es un demonio Apropiado para equipos de servidor Apropiado para equipos de escritorio/portátiles Le permite ejecutar trabajos programados cada minuto Solo le permite ejecutar trabajos programados a diario No no ejecutó un trabajo programado cuando la máquina está apagada Si la máquina está apagada cuando vence un trabajo programado, ejecutará una trabajo programado cuando la máquina se enciende la próxima vez Puede ser utilizado tanto por usuarios normales como por root Solo puede ser utilizado por root a menos que lo contrario (habilitado para usuarios normales con configuraciones específicas)

La principal diferencia entre cron. y anacron. es que cron. funciona eficazmente en equipos que se ejecutarán de forma continua, mientras que anacron. está destinado a equipos que se apagarán en un día o semana.

Si conoce alguna otra forma, compártala con nosotros utilizando el formulario de comentarios a continuación.

Leave a comment

Your email address will not be published. Required fields are marked *