Editado 5 hace meses por ExtremeHow Equipo Editorial
CronUbuntuAutomatizaciónLinuxProgramaciónSistemas operativosSistemaAdministraciónLínea de comandosMantenimiento
Traducción actualizada 6 hace meses
Configurar trabajos cron en Ubuntu es una habilidad esencial para cualquier administrador del sistema o cualquier persona que trabaje para automatizar tareas repetitivas. En esta guía, exploraremos cron y crontab, que son herramientas para automatizar y programar tareas de manera eficiente en sistemas operativos similares a Unix.
El demonio cron es un servicio de fondo que se ejecuta en sistemas operativos similares a Unix y ejecuta comandos o scripts programados. Los comandos o scripts se especifican en un archivo especial llamado un crontab. Cada usuario tiene su propio crontab, lo que les permite programar tareas sin afectar la configuración general del sistema.
Un caso de uso común para un trabajo cron podría ser ejecutar un script de respaldo todos los días a la medianoche, limpiar archivos temporales una vez por semana o enviar informes por correo electrónico periódicamente.
Los trabajos cron se definen por una sintaxis especial en el archivo crontab. El formato básico para un trabajo cron incluye seis campos:
Un ejemplo de entrada de trabajo cron que ejecuta el script ubicado en /home/user/backup.sh
todos los días a las 3 AM se vería así:
0 3 * * * /home/user/backup.sh
Para crear o editar trabajos cron, necesita acceso al archivo crontab. Use el siguiente comando para abrir crontab en su editor de texto predeterminado:
crontab -e
Cuando ejecuta este comando, se abre el archivo crontab específico para el usuario actual en un editor de texto, que está configurado en crontab por defecto, como nano o vi.
En crontab, se pueden usar caracteres especiales y palabras clave para simplificar la programación. Estos son algunos de los caracteres más comunes:
*
: Representa cualquier valor. Por ejemplo, usar *
en el campo "Hora" significaría "cada hora".,
: Le permite especificar una lista de valores. Por ejemplo, 1,2,5
en el campo "Día de la semana" significa lunes, martes y viernes.-
: Establece un rango de valores. 1-5
en el campo "Día de la semana" significaría de lunes a viernes./
: Especifica el valor del paso. */2
en el campo "Hora" significa cada dos horas.@reboot
, @yearly
, @monthly
, @weekly
, @daily
, @hourly
pueden especificar la programación de manera más natural, como @daily para ejecutar la tarea una vez al día.Por ejemplo, una entrada de trabajo cron para ejecutar un script cada dos horas podría ser así:
0 */2 * * * /home/user/script.sh
Una vez que entienda la sintaxis básica y los caracteres especiales, puede escribir su propio trabajo cron. Supongamos que tiene un script en /home/user/cleanup.sh
que desea ejecutar todos los días a las 4:30 PM. Añadiría la siguiente línea a su crontab:
30 16 * * * /home/user/cleanup.sh
Guarde el archivo y salga del editor. El nuevo trabajo cron está ahora configurado.
Para ver una lista de trabajos cron para el usuario actual, use el siguiente comando:
crontab -l
Este comando muestra todos los trabajos cron programados para el usuario actual.
Para eliminar un trabajo cron, simplemente abra el crontab usando crontab -e
, elimine la línea que ya no necesita, guarde y cierre el archivo.
Los trabajos cron pueden ser poderosos cuando se usan eficientemente. Aquí hay algunos casos de uso comunes:
Aquí hay algunos ejemplos más para ayudar a solidificar su comprensión:
0 9 * * 1-5 /path/to/your/script.sh
0 0 1 * * /path/to/your/command
0 7 * * * /usr/bin/sendmail user@example.com < /home/user/email.txt
Para depurar o verificar si un trabajo cron se ejecutó correctamente, puede consultar los archivos de registro donde el demonio cron registra sus actividades. Estos registros generalmente se encuentran en el directorio /var/log/
y, en algunos sistemas, los archivos se nombran syslog
o cron.log
.
Para ver los registros de cron use el siguiente comando:
cat /var/log/syslog | grep cron
Ajuste la configuración de registro según sea necesario en el archivo /etc/rsyslog.d/50-default.conf
para incluir o excluir los registros de cron.
Aquí hay algunos consejos y mejores prácticas para gestionar trabajos cron:
Esta guía integral proporciona una comprensión de cómo funcionan los trabajos cron y cómo configurarlos de manera efectiva en Ubuntu. Al seguir las pautas y practicar con los ejemplos, podrá automatizar tareas, ahorrar tiempo y aumentar el rendimiento del sistema de manera eficiente.
Si encuentras algo incorrecto en el contenido del artículo, puedes