El sistema cron es un método para ejecutar automáticamente comandos en un horario. Un trabajo programado se llama cronjob , y se crea en un archivo llamado crontab . Es la forma más fácil y antigua para que un usuario de computadora automatice su computadora.
Escribir un cronjob
Para crear un cronjob, edite su crontab
usando el -e
opción:
$ crontab -e
Esto abre su crontab, su editor de texto predeterminado. Para configurar el editor de texto explícitamente, use el EDITOR
variable de entorno:
$ EDITOR=nano crontab -e
Sintaxis cron
Más recursos de Linux
- Hoja de trucos de los comandos de Linux
- Hoja de trucos de comandos avanzados de Linux
- Curso en línea gratuito:Descripción general técnica de RHEL
- Hoja de trucos de red de Linux
- Hoja de trucos de SELinux
- Hoja de trucos de los comandos comunes de Linux
- ¿Qué son los contenedores de Linux?
- Nuestros últimos artículos sobre Linux
Para programar un cronjob, proporcione una expresión cron seguida del comando que desea que ejecute su computadora. La expresión cron programa cuándo se ejecuta el comando:
-
minuto (0 a 59)
-
hora (0 a 23, siendo 0 medianoche)
-
día del mes (1 a 31)
-
mes (1 a 12)
-
día de la semana (0 a 6, siendo el domingo 0)
Un asterisco (*
) en un campo se traduce como "todos". Por ejemplo, esta expresión ejecuta un script de copia de seguridad en el minuto 0 de cada hora en cada día de cada mes:
0 * * * * /opt/backup.sh
Esta expresión ejecuta un script de copia de seguridad a las 3:30 a. m. del domingo:
30 3 * * 0 /opt/backup.sh
Sintaxis simplificada
Las implementaciones modernas de cron aceptan macros simplificadas en lugar de una expresión de cron:
-
@hourly
corre en el minuto 0 de cada hora de cada día -
@daily
corre en el minuto 0 de la hora 0 de cada día -
@weekly
corre en el minuto 0 de la hora 0 del domingo -
@monthly
corre en el minuto 0 de la hora 0 del primer día del mes
Por ejemplo, esta línea crontab ejecuta un script de respaldo todos los días a la medianoche:
/opt/backup.sh @daily
Cómo detener un cronjob
Una vez que haya iniciado un cronjob, está diseñado para ejecutarse según lo programado para siempre. Para detener un cronjob una vez que lo haya iniciado, debe editar su crontab, eliminar la línea que activa el trabajo y luego guardar el archivo.
$ EDITOR=nano crontab -e
Para detener un trabajo que se está ejecutando activamente, use los comandos de proceso estándar de Linux para detener un proceso en ejecución.
Está automatizado
Una vez que haya escrito su crontab, guarde el archivo y salga de su editor. Su cronjob ha sido programado, por lo que cron hace el resto.