Qué son los cronjobs o tareas cron

Por Felipe

Publicado en:

Cuando se trabaja en el sistema operativo Linux es necesario realizar tareas que se ejecuten de forma automática sin necesidad de dar la orden en el momento en el que se realizan. Estas tareas cron sirven para poder programar copias de seguridad, hacer actualizaciones automáticas del sistema operativo o ejecutar scripts para realizar cualquier acción que se considere oportuna.

Los cronjobs son utilizados de forma habitual por los administradores web y de sistemas para realizar muchas de sus tareas del día a día.

 

Qué es un cron y sus beneficios

Un cron es un administrador de tareas que se ejecuta en Linux para realizar una acción. Las tareas cron se ejecutan siempre en segundo plano sin que interfieran en otros procesos que se estén llevando a cabo en el servidor. 

La palabra “cron” proviene del término griego chronos, que significa tiempo. De ahí que un cron en Linux es una tarea que se ejecuta en un tiempo determinado.

 

Qué son los cronjobs

Las tareas tarea cron o cronjobs consisten en la programación de scripts para que se ejecute de forma automática bajo un entorno Linux. Para la gestión de un servidor o sitio web, este tipo de tareas se utiliza para realizar acciones rutinarias relacionadas con la gestión de la base de datos, usuarios o correo electrónico, entre otras. 

 

Qué es crontab

Crontab es un fichero en formato texto donde se guardan todas las tareas cron a realizar y los parámetros de las mismas. Para ver su contenido basta con abrir una terminal o consola de comandos de Linux e introducir el comando crontab -e. Se mostrará el contenido del archivo y las distintas tareas que contiene. Editando este archivo se podrán añadir, cambiar o eliminar cronjobs a la lista de tareas por hacer.

Cada usuario del sistema tiene su propio archivo crontab, con las tareas a realizar. Estos archivos se dividen principalmente en dos partes:

  • – Temporizador de la programación. Donde se indica cuándo se debe ejecutar la tarea. Se puede indicar en minutos, hora, día del mes, mes o día de la semana.
  • – Comando. Es el que indica la tarea en sí a realizar por el sistema.

 

Cuáles son las utilidades de las tareas cron

Utilizar cronjobs es algo habitual para los administradores de sitios web, ya que permite automatizar muchas de las tareas web rutinarias que deben realizarse en los servidores. 

Algunas de las principales tareas cron que se realizan en un servidor web son:

 

Programar copias de seguridad

Para una página web o eCommerce es fundamental disponer de copias de seguridad para poder restablecerla en caso de que algo no funcione bien (errores, ataques externos, pérdidas de información, o similares).

Incluir un cronjob para realizar una copia de seguridad periódica es fundamental para incrementar la seguridad y garantizar la continuidad de un sitio web.

Un ejemplo de esta tarea cron para copia de seguridad sería:

00 04 * * * /home/hosting/backup.sh

Añadiendo esa línea al crontab se realizará un backup del sitio web todos los días a las 4 de la mañana de forma automática.

 

Tareas de limpieza

Es habitual que se programen tareas cron para realizar limpiezas en la base de datos, cookies o archivos temporales, entre otras.

Por ejemplo, si se quiere ejecutar las tareas de limpieza el primer día de cada mes de forma automatizada se puede utilizar el siguiente comando:

@monthly /scripts/cleanup.sh

Otra utilidad de limpieza común a incluir en cronjobs es la eliminación de archivos y directorios vacíos o temporales.

 

Cómo crear tareas cron

Cuando se contratan los servicios de un proveedor de alojamiento web se accede a un panel de control, normalmente cpanel, desde el que es posible crear una tarea cron para automatizar de forma periódica una tarea, como por ejemplo, ejecutar una copia de seguridad del sitio web.

Para las personas que no se encargan de la administración de un sitio web, pero necesitan programar cronjobs para automatizar tareas de su página web, existen herramientas online que permiten crear tareas cron de forma rápida y sencilla, sin necesidad de poseer conocimientos avanzados en Linux.

Algunos portales online para crear cronjobs son:

  • – Cron Job Generator. Se trata de un portal muy sencillo de utilizar, desde el cual es posible crear una tarea cron en poco tiempo. Basta con configurar la fecha para su ejecución e introducir el comando y así se obtiene la sintaxis cron para incluir en el archivo crontab.
  • Crontab Generator. Este portal web funciona de forma similar a Cron Job Generator, pero permite enviar el código cron generado a través de correo electrónico (o copiarlo para incluirlo directamente en el archivo crontab).

 

 

Hemos qué es cron y la importancia de crear cronjobs para automatizar tareas rutinarias que deben realizarse en la administración de un hosting. A pesar de ser una herramienta que utilizan los administradores web y de sistemas, es posible programar tareas cron gracias al uso de herramientas online que facilitan la creación de la sintaxis correcta que debe añadirse al archivo crontab.