domingo, 9 de noviembre de 2014

Scripts en linux

Comando cron y crontab



El comando cron es un administrador de procesos en segundo plano (demonio), que ejecuta procesos o guiones en  intervalos regulares de tiempo (cada minuto, días o meses).
  • Los procesos a ejecutarse y la hora se debe especificar en el fichero crontab.
Para la implementación de estos comando realizados su utilizará el siguiente script:


A continuación explicaré cada linea del script:

cd : este comando nos ubica en el directorio home del ususario

rm -R etc.backup: Esta linea de comando borra algún directorio con el nombre "etc.backup" con todo el contenido dentro de ello y si preguntar al usuario si desea hacerlo o no, en el caso de que lo hubiese, porque el objetivo de este script es crear una carpeta de respaldo del directorio /etc , si no se hace esto al momento de ejecutar el script nos mostrar un error.

mkdir etc.backup: Crea en el directorio actual un directorio de nombre "etc.backup"

cd -R    /etc    /home/edwin/etc.backup: Este linea de comando copia de forma recursiva todo el contenido de el directorio /etc al directorio "etc.backup" ubicado en el directorio home del usuario.

Una vez comprendido cada el funcionamiento de cada línea del script, procedemos a programarlo para que se ejecute en un cierto intervalo de tiempo, para eso utilizamos el comando crontab

Ingresamos el comando crontab con el siguiente parametro: crontab -e. Esto se lo hace para poder editar el archivo.
Antes de esto debemos logearnos como superusuario, si no hacemos esto, el programa (script) no funcionará.


  • m: corresponde al minuto en que se va a ejecutar el script, el valor va de 0 a 59
  • h: la hora exacta, se maneja el formato de 24 horas, los valores van de 0 a 23, siendo 0 las 12:00 de la medianoche.
  • dom: hace referencia al día del mes, por ejemplo se puede especificar 15 si se quiere ejecutar cada día 15.
  • mon: corresponde al mes del año.
  • dow: significa el día de la semana, puede ser numérico (0 a 7, donde 0 y 7 son domingo) o las 3 primeras letras del día en inglés: mon, tue, wed, thu, fri, sat, sun.
  • command: refiere al comando o a la ruta absoluta del script a ejecutar, ejemplo: /home/usuario/scripts/actualizar.sh, si acaso llama a un script este debe ser ejecutable.

No hay comentarios:

Publicar un comentario