Como buena administradora de sistemas, seguramente estarás familiarizada con crontab o las tareas. Se pueden automatizar tareas para muchas cosas, ejecutar comandos, scripts escritos en Bash y puedes hacer que se ejecute a una hora y día determinado.

¿Necesitas hacer copias de seguridad de forma automática? Crontab es tu amigo.

En este tutorial no vamos ha entrar en el uso de Crontab, si quieres saber más de Crontab, puedes revisar este otro artículo que te dejo aquí:

Programación de eventos repetidos en GNU/Linux
En sistemas basados en Unix, tenemos un servicio llamado Cron que permite la programación de eventos repetidos. Funciona con ayuda de una tabla llamada crontab. Es un archivo de texto que se puede editar con un simple editor, como por ejemplo vi o nano. Para modificar el crontab personal del

En este tutorial vamos ver como revisar en los logs que se ejecutan nuestros cronjobs configurados. De esta forma podemos saber si se están ejecutando como deberían.

A continuación os explicamos las diferentes formas que hay para revisarlo.

Revisar el log del sistema

Como bien sabéis, en /var/log es donde se encuentran todos los registros del sistema. En el caso de las distribuciones basadas en Debian (como Ubuntu), podemos encontrarlo en /var/log/syslog. Si por lo contrario eres más de la familia de CentOS (Fedora, Red Hat, etc) el log principal es /var/log/messages.

Podemos utilizar el comando grep para hacer un filtro directamente con el fichero log /var/log/syslog.

Te dejo este artículo que habla más sobre grep por si quieres profundizar un poco más:

Filtros y herramientas en GNU/Linux [Parte 1]
En sistemas, se conoce como filtro un programa que sabe escribir y leer datos por los canales estándares de entrada y salida. Dicho programa modifica o trata si es preciso el contenido. Por ejemplo, wc es un filtro. Las herramientas no siempre se comportan como filtros. Permiten un determinado númer…

El comando es el siguiente:

grep -w cron /var/log/syslog

La salida es la siguiente:

Sep 12 12:17:01 debian CRON[1439]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Sep 12 12:39:01 debian cron[1371]: (root) RELOAD (crontabs/root)

Es posible que si lo ejecutas tu, tendrás más entradas, pero deberían de ser similares a estas.

Configurar un log especifico para crontab (Lo recomendado)

Utilizar un registro a parte es una práctica muy recomendable, ya que tendremos acceso a los registros de forma más sencilla.

Para eso, primero tendremos que crear el fichero de log:

touch /var/log/cron.log

Ahora deberemos de editar el fichero /etc/rsyslog.d/50-default.conf para añadir la siguiente regla:

cron.*                  /var/log/cron.log

Y luego reiniciamos el servicio de RSyslog:

systemctl restart rsyslog

Ahora si editamos el fichero /var/log/cron.log tendremos todos los registros relacionados con cron directamente en ese fichero.

# tail -f /var/log/cron.log 
Sep 12 13:08:11 debian crontab[1848]: (root) BEGIN EDIT (root)
Sep 12 13:08:20 debian crontab[1848]: (root) REPLACE (root)
Sep 12 13:08:20 debian crontab[1848]: (root) END EDIT (root)

Conclusión

Los archivos de registro del sistema son muy cruciales para la resolución de problemas y el diagnóstico de problemas relacionados con el sistema, por lo que los registros de cron no son una excepción.

El Syslog mantiene los registros relacionados con crontab, sin embargo, se recomienda tener un archivo de registro dedicado a cron.

Haz que cada palabra cuente: tu donación nos inspira a seguir creando contenido. Accede al apartado de Donación para hacer tu aportación