lunes, 30 de junio de 2014

Backups Consola Linux

Si estas administrando un servidor Linux, en mi caso Ubuntu Server, lo normal es que necesites automatizar tareas como por ejemplo las copias de seguridad. Para la automatización de comandos podemos usar Cron que viene instalado en la mayoría de distribuciones Linux.
Para la configuración usaremos el programa crontab que viene con el paquete cron y que nos va a ayudar a programar nuestras tareas de un manera sencilla.
Vamos a hacer un ejemplo para crear copias de seguridad diarias de las carpetas de usuarios -> /home
1.- Editamos crontab desde terminal ejecutando -> sudo crontab -e
nos saldrá una pantalla parcida a la de la imagen en donde incluiremos nuestras líneas de código.
Crontab automatizacion de copias automaticas linux
2.- Introduciremos los comandos indicando cuando queremos que se ejecuten. Para ello crontab tiene un sistema muy sencillo de usar:
Cada linea de este archivo esta formada por 7 columnas
  1. Minutos (de 0 a 59)
  2. Horas (de 0 a 23)
  3. Dia (de 1 a 31)
  4. Mes (de 1 a 12)
  5. Dia de la semana (de 0 a 7, donde 7 suele indicar domingo dependiendo de la configuración del sistema)
  6. usuario (opcional)
  7. orden a ejecutar
En las cinco primeras columnas si indicamos el valor asterísco ‘*’, estaremos diciendo que lo haga en todo el rango de esos valores. Por ejemplo si ponemos esto: 0 4 * * 7 estaríamos diciendo que la tarea se ejecutara a las 4:00, todos los días, todos los messes, los días que sean domingo.
3.- Introducimos nuestro comando: -> 0 2 * * * tar -jcvf /tmp/copiaSeguridadHome.tar.bz2 /home
Con la línea introducida anteriormente tendríamos copias de seguridad todos los días del año a las 2:00 am, del directorio /home y sus subdirectorios en el archivo copiaSeguridadHome.tar.bz2 en el directorio tmp.
4.- Reiniciamos cron para que cargue la nueva configuracion: -> sudo /etc/init.d/cron restart

No hay comentarios: