Configuración del CRON
Cron es un comando de los sistemas operativos Linux cuya ejecución permite administrar procesos en segundo plano (de modo transparente al usuario mientras se ejecutan otras tareas).
Se utiliza para ejecutar procesos en forma programada en intervalos regulares de tiempo (por ejemplo, cada minuto, día, semana o mes).
La configuración del cron siempre la hacemos bajo permisos de usuario root.
El archivo donde se especifica la configuración del cron se encuentra en /var/spool/cron y se denomina root.
El mantenimiento del archivo de configuración root se hace mediante el comando crontab.
La forma de editar dicho archivo o modificar es ejecutando el comando crontab con permisos de usuario root desde cualquier directorio.
El archivo root contiene líneas , cada una representa una tarea, cada línea esta compuesta por una expresión CRON, seguida por un script para ejecutarse.
Para el «día de la semana» (campo 5), ambos 0 y 7, son considerados Domingo.
Si tanto el «día del mes» como «día de la semana» son restringidos (no son » * » ), entonces el «día del mes» (campo 3) o el «día de la semana» (campo 5) debe coincidir con el día actual.
Cada línea del archivo tiene la siguiente estructura:
A las 22:00 hrs todas las fechas(*) de todos los meses (*) de lunes a viernes (día 1 de la semana al día 5) se ejecutará el script prueba.sh ubicado en /usr/bin
Los scripts como “prueba.sh”, son archivos ejecutables que contienen una serie de instrucciones tareas a ser ejecutadas, deben quedar en el directorio /home/opus/bin y deben tener un link al /usr/bin que es desde donde se ejecutan.
crontab posee diferentes opciones de mantenimiento:
crontab –e funciona como el comando de edición vi, permite la edición del archivo root
crontab –l despliega el contenido del archivo en pantalla
Instrucciones para edición del archivo:
- Ejecutar crontab –e para quedar en modo edición. Nos va a aparecer todas las lineas de cron ya programadas.
- Modificar o agregar lineas en el archivo según las necesidades.
- Salir grabando con 😡 o sin grabar con :q!
- Archivo prueba.sh en el /home/opus/bin
/home/opus/bin/prueba.sh - Hacer link al /usr/bin
ln –s /home/opus/bin/prueba.sh - Configuración de cron para que el archivo prueba se ejecute de lunes a viernes a las 22hrs.
crontab -e a) se edita el cron
0 22 * * 1-5 /usr/bin/prueba.sh b) se define la tarea
😡 c)se graba y guarda el archivo de cron
Ej. del cron de opus:
Se observa la shell [root@opuslx cron] donde se tiene jerarquía de usuario root para poder ejecutar los comandos de cron.
Ubicado en /usr/var se lista el contenido del cron con crontab -l
Se observa por ej. en la décimo segunda línea 45 23 * * 1-6 /usr/bin/respaldo-opus.sh
que a las 23:45 de todos los días de todos los meses de lunes a sábado se ejecuta el respaldo de Opus.