Cargando

Ir a contenido

X


Ver Más! Profesionales IT y desarrolladores: Llega el evento más importante del año! Servicios cloud, Business Applications, Analytics, IoT, Machine Learning, Bots, Blockchain etc.


 


Cómo programar tareas usando Anacron en Linux

Cómo programar tareas en sistemas Linux a través de la consola usando Anacron y cron.


Escrito por jun 13 2017 09:30



Al ejecutar ambientes Linux es común que sea necesario programar determinadas tareas en un momento dado con el fin de llevar a cabo tareas de soporte, gestión o control.

 

Dos de los comandos más usados para dicho fin son cron y anacron los cuales han sido desarrollados con el objetivo de facilitar la programación de estas tareas de forma sencilla y práctica.

 

Dos de los parámetros más usados, junto a estos dos, son at y batch para la programación de las tareas en un tiempo específico. En este caso usaremos Ubuntu 17.04 Server.

 


1. Qué es Cron


Cron es un Daemon que podemos usar para llevar a cabo la ejecución de tareas programadas como respaldo de directorios, copias de seguridad del sistema, instalación de actualizaciones y es ideal para equipos que funcionan de forma periódica como los servidores.

 

Al usar cron, las tareas se crean en archivos crontab los cuales son scripts que definen la tarea a ejecutar y la ruta por defecto es /etc/crontab donde, al acceder con algún editor, veremos las respectivas tareas con su frecuencia de ejecución:

 

 

Pero al usar crontab podremos como usuarios crear nuestro propio archivo de tareas programadas, para ello ejecutamos la siguiente línea:

crontab -e
Al ejecutar este comando podremos seleccionar hasta cinco opciones de editor para abrir el nuevo archivo a crear (en este caso hemos seleccionado la opción 2 nano) y veremos lo siguiente:

 

 

 

 

 

Allí simplemente será necesario registrar los datos de la tarea a ejecutar.

 


2. Cómo instalar Anacron


Para este estudio nos centraremos en Anacron el cual funciona de forma diferente a Cron ya que este permite la ejecución de tareas en equipos que su uso es periódico y no deben estar activos 24 X 7 como los servidores.
Con Anacron podremos llevar a cabo tareas con periodos de tiempo diarios, semanales y mensuales en equipos como portátiles o de escritorio asignados a las maquinas cliente y es útil ya que si en el momento que debe ser ejecutado el script el equipo no se encuentra disponible tan pronto lo este será ejecutado el script sin afectar el rendimiento ni la disponibilidad de este.

 

Para instalar y sacar el máximo provecho a Anacron ejecutaremos el siguiente comando:

sudo apt install anacron
Nota
En ediciones anteriores a Ubuntu 17.04 ejecutaremos el siguiente comando:
sudo apt-get install anacron

 

 


3. Cómo usar Anacron

 

Paso 1

Los parámetros de configuración se alojan en la ruta /etc/anacrontab y la sintaxis a usar comprende los siguientes campos:
period   delay   job-identifier   command
Nota
Todos los comentarios dentro de Anacron deben iniciar con el símbolo #.

 

Paso 2

Al acceder a la ruta indicada veremos lo siguiente:

 

 

Paso 3

Los valores a usar son:
  • Period: Indica la frecuencia con la cual se realizará la tarea en cuestión usando parámetros como @daily (diario), @weekly (semanal) o @monthly (mensual), pero también podremos usar los parámetros 1 - diario, 7 - semanal, 30 - mensual y N - número de días en los cuales se realizará la tarea.
  • Delay: Hace referencia a la cantidad de minutos antes de ser ejecutada la tarea.
  • Job Identifier: Indica el nombre que le otorgaremos a la tarea.
  • Command: Hace referencia al comando o script a ser ejecutado.

 

Paso 4

Para conocer la estructura podremos ejecutar la siguiente línea:
ls -l /var/spool/anacron/

 

Paso 5

Básicamente Anacron verifica si una tarea ha sido ejecutada dentro del periodo inicial estipulado, si no es así, procede a ejecutar lo que hemos indicado en el campo command después de haber esperado el número de minutos indicados en el campo delay.

 

Una vez se haya ejecutado la tarea, esta será registrada en la ruta /var/spool/anacron con su respectiva fecha y hora.
Por ejemplo, podremos agregar la siguiente línea en el archivo anacrontab para programar una tarea diaria de respaldo con un retraso de 8 minutos:

@daily    8    solvetic.daily   /bin/bash /home/solvetic/bin/backup.sh

 

Paso 6

Con este caso si cuando debe llevarse a cabo la tarea de respaldo la máquina está apagada, la próxima vez que sea iniciada esperara 8 minutos y realizara la tarea indicada sin esperar al día siguiente, etc. Dentro del archivo anacrontab debemos considerar dos aspectos fundamentales:

 

START_HOURS_RANGE
Indica el rango de tiempo en el cual se ejecutará la tarea.

 

RANDOM_DELAY
Permite definir el retraso máximo aleatorio agregado al retraso que hemos definido en el campo delay, este valor por defecto es 45.

 


4. Diferencia entre Cron y Anacron


Existen una serie de diferencias entre estas dos utilidades las cuales mencionamos a continuación:

 

7-diferencias-cron-y-anacron.png

 

Con esto podremos decidir cuál es la mejor alternativa para programar determinadas tareas de respaldo en ambientes Linux.

 

Descubre cómo puedes ahorrar tiempo aprendiendo cómo programar , crear o editar tareas con el Programador de tareas en Windows 10.



AYUDA A MEJORAR ESTE TUTORIAL!

¿Quieres ayudarnos a mejorar este tutorial más? Puedes enviar tu Revisión con los cambios que considere útiles. Ya hay 0 usuario que han contribuido en este tutorial al enviar sus Revisiones. ¡Puedes ser el próximo!


Tutoriales Relacionados



Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!
10
VOTA
5
100%
4
0%
3
0%
2
0%
1
0%

  Información

  •   Publicado jun 13 2017 09:30
  •   Actualizado jun 13 2017 10:12
  •   Visitas 2K
  •   Nivel
    Avanzado