Servicio Cron en Linux con un ejemplo (copia de seguridad)

Foro sobre GNU Linux
gbeltran
Mensajes: 325
Registrado: 13 May 2023, 01:15
Ubicación: Valencia - España
Contactar:

Servicio Cron en Linux con un ejemplo (copia de seguridad)

Mensaje por gbeltran »

Cron es un servicio en sistemas operativos tipo UNIX, como Linux, que permite programar la ejecución de comandos o scripts en momentos específicos. Es ideal para automatizar tareas repetitivas sin intervención manual.

Conceptos Clave:
- Daemon (crond): Es el proceso que se ejecuta en segundo plano y se encarga de ejecutar las tareas programadas.
- Crontab: Es el archivo de configuración donde defines las tareas y sus horarios.
- Cron Job: Es una tarea específica programada para ejecutarse en un momento determinado.

Por ejemplo, puedes usar cron para realizar copias de seguridad automáticas, recolectar logs del sistema periódicamente o ejecutar scripts de mantenimiento.


Ejemplo para ejecutar automáticamente un script de copia de seguridad todos los días a las 12:30 horas:

1. Abre el archivo crontab:

Código: Seleccionar todo

   crontab -e
   
2. Añade la siguiente línea al archivo crontab:

Código: Seleccionar todo

   30 12 * * * /ruta/al/script_de_copia_de_seguridad.sh
   
Aquí, 30 12 * * * especifica que el script se ejecutará todos los días a las 12:30 horas. Asegúrate de reemplazar [/b]/ruta/al/script_de_copia_de_seguridad.sh[/b] con la ruta real a tu script de bash.

3. Guarda y cierra el archivo crontab.


Para verificar si un trabajo de crontab se ha ejecutado en tu sistema Linux, puedes seguir estos pasos:

1. Revisar el archivo de logs de cron:
- Abre una terminal.
- Usa el siguiente comando para ver el archivo de logs de cron:

Código: Seleccionar todo

     grep CRON /var/log/syslog
     
- En algunas distribuciones, el archivo de logs puede estar en /var/log/cron.log.

NOTA IMPORTANTE: En Debian 12 tendrás que instalarte el servicio rsyslog
Ver: https://kifarunix.com/enable-rsyslog-lo ... debian-12/
Resumiendo:
Actualizar sistema: sudo apt update
Instalar el servicio: sudo apt install rsyslog
Comprobar: systemctl status rsyslog

2. Verificar el estado del servicio cron:
- Puedes usar el siguiente comando para ver el estado del servicio cron:

Código: Seleccionar todo

     systemctl status cron
     
3. Revisar la salida del trabajo cron:
- Si has redirigido la salida de tu trabajo cron a un archivo, puedes revisar ese archivo para ver si el trabajo se ha ejecutado correctamente.

4. Usar el comando crontab[/b][/b]:
- Para listar los trabajos cron del usuario actual, usa:

Código: Seleccionar todo

     crontab -l
     
Responder