Programa tareas automaticas con Crontab – Backup

En la Categoría Debian, Linux, Ubuntu el dia 05 octubre 2008

cron1

Hace tiempo que quería hacer un manual como este ya que en algunas ocasiones he necesitado programar una tarea en alguno de los anteriores manuales y no he tenido un articulo que explique como podemos programar una tarea para que se ejecute algo que necesitemos un día a una hora especifica.

En esta ocasión voy ha hablaros del programador de tareas llamado Crontab programa derivado del genuino Cron. Seguro que muchos de vosotros habéis programado una tarea que habéis visto en algún manual con un simple copy y paste. Todos sabemos para que vale pero lo mas importante de esto no es que solo funcione. Lo mas importante es saber usarlo para que cuando necesitemos ejecutar algo en una fecha especifica sepamos como hacerlo y a continuación os voy a explicar el como, donde y porque del asunto …

Cron viene instalado en la mayoría de distribuciones Linux actuales incluyendo Linux Ubuntu y Linux Debian mas que nada para la actualización de ficheros Logs y demás cosas que a simple vista no vemos pero en segundo plano están cumpliendo su función.

En el ordenador en el que voy a hacer la practica incorpora una instalación de Linux Ubuntu Server y aunque debería de ser lo mismo en todos los sistemas Linux nunca está mal decirlo porque la configuración puede derivarse.

Para la configuración de tareas vamos a usar el programa crontab que viene con el paquete cron y que nos va a servir para configurar nuestras tareas automáticas de un modo muy simple.

La manera de decirle que queremos que algo se ejecute en nuestro ordenador un día a una hora especifico es muy sencilla pero hay que entenderla.

Imaginemos que necesitemos que una vez a la semana se comprima todo un directorio completo y nos cree un fichero en formato tar.gz para tener una copia de seguridad. Ademas vamos a suponer que lo necesitamos todos los domingos a las 6:30 de la mañana …

Para comenzar vamos a editar crontab desde una Terminal y ejecutando …

sudo crontab -e

Veremos algo así …

cron2

Como veis el archivo parece complejo pero no tiene mucha complicación una vez lo entendamos. En mi caso necesito hacer una copia de seguridad del directorio /home/www/almacen/web y que me lo comprima en el fichero backupweb.tar.gz situado en /home/www/almacen/Backup-Server para hacer esto simplemente deberíamos ejecutar tar -czf /home/www/almacen/Backup-Server/backupweb.tar.gz /home/www/almacen/web pero ademas de indicarle esto debemos indicarle que minuto, hora, día del mes … Para ello le indicaremos delante del comando de compresión tar lo siguiente …

30 6 * * 0 tar -czf /home/www/almacen/Backup-Server/backupweb.tar.gz /home/www/almacen/web

Como veis delante del comando tar le indico que se ejecute todos los domingos del mes a las 6:30 de la mañana. La explicación de todo esto es la siguiente …

cron3

Todo lo que no especifiquemos con números podemos hacerlo con asteriscos ” * “, esto querrá decir todos los días del mes, todas las horas, minutos, meses ….

cron4

Una vez tengamos la linea bien configurada dentro del programa crontab salimos del editor con la tecla F2 y seguidamente pulsamos enter.

Ahora tan solo nos queda reiniciar cron para que cargue la nueva configuración …

sudo /etc/init.d/cron restart

Y listo !!!

Esta vez hemos usado el programador de tareas Crontab para hacer una copia de seguridad de un directorio pero se pueden hacer miles de cosas, tantas como puedas imaginar.

 
 

Artículos Relacionados ...

 
Sitio protegido por una licencia Creative Commons. © 2006 / 2012 Política de privacidad en Forat. Design by: Charleston Dating with Ohio Singles | Volleyball Singles | Florida Telemarketing Jobs