Cron es un servicio que se usa para lanzar tareas programadas. Su configuración se realiza a través de un fichero de configuración donde se definen las tareas programadas.
Cada usuario tiene su propio fichero de configuración, este se edita con el comando:
crontab -e
Cada linea del fichero es una tarea programada. Una tarea progrmada tiene 6 parámetros (excepto si empieza por @ que solo tiene 2), los cinco primeros definen en momento cuando se lanza el comando y el sexto el comando que se lanza:
- Minuto en el que se ejecutará el comando, va de 0 a 59.
- Hora en la que se ejecutará el comando, va de 0 a 23.
- Día del mes en el que se ejecutará el comando, va del 1 al 31.
- Mes en el que se ejecutará el comando, va del 1 al 12.
- Día de la semana en el que se ejecutará el comando, va de 0 a 7.
- Comando que se ejecutará
Se pueden usar los siguientes modificadores:
- * : cualquier valor de ese campo
- , : define listas de valores. 1,3,5
- – : define rangos de valores. 1-5 seria lo mismo que 1,2,3,4,5
- / : en combinación con un rango o el asterisco define «cada cuanto». 1-5/2 seria lo mismo que 1,3,5
- # : Se usa en el campo día de la semana, indica que semana del mes. 1#2 el segundo lunes del mes
- W : Se usa en el campo día de la semana, indica el primero del mes. 1W el primer lunes del mes
- L : Se usa en el campo día de la semana, indica el último del mes. 1L el último lunes del mes
- @ : Es un atajo para indicar momentos concretos
- @reboot una vez al inicio del sistema
- @yearly una vez al año «0 0 1 1 *»
- @annually una vez al año «0 0 1 1 *»
- @monthly una vez al mes «0 0 1 * *»
- @weekly una vez a la semana «0 0 * * 0″
- @daily una vez cada dia «0 0 * * *»
- @hourly una vez cada hora «0 * * * *»
Algunos ejemplos:
30 22 * * 1-5 reboot
Reiniciar de lunes a viernes a las 22:30 (las diez de la noche)
30 10-14/2 * * * reboot
Reiniciar a las 10:30, 12:30 y 14:30 cada día
15 */6 * * * reboot
Reiniciar cada 6 horas cuando sean las y cuarto de esa hora
@hourly reboot
Reiniciar cada hora
30 10 * * 0W reboot
Reiniciar el primer domingo de cada mes
30 10 * * 7W reboot
Reiniciar el primer domingo de cada mes (el 0 y el 7 indican domingo)
Pingback: Raspberry Pi programar el encendido, apagado y reinicio | Construyendo a Chispas
Pingback: Raspberry Pi, ejecutar una aplicación o script al inicio | Construyendo a Chispas