Tutoriales - Como realizar y automatizar copias de seguridad
A través de este tutorial puedes aprender a realizar copias de seguridad de tus ficheros en tu cuenta del Laboratorio de una forma rápida y sencilla.
Comando Ebackup
El comando ebackup sirve para comprimir un directorio en formato ZIP y enviarlo adjuntado en un correo electrónico, a la dirección dada por el usuario en el momento de invocar el comando. Este comando está disponible tanto en las estaciones como en el servidor pantuflo. Por ejemplo:
$ ebackup Documentos/ micuentadecorreo@gmail.com
Comprimiría el directorio 'Documentos' y lo enviaría adjuntado en un correo electrónico a la dirección micuentadecorreo@gmail.com. ¿Fácil, verdad?
Automatizar las copias de seguridad usando el cron de Linux
Si combinamos la herramienta ebackup con el cron de Linux podemos conseguir automatizar copias de seguridad, cada intervalo de tiempo, el que nosotros queramos.
El cron de Linux sirve para programar tareas de forma automática: nosotros elegimos el momento en el que deben ser ejecutadas, estableciendo para ello un tiempo absoluto o una periodicidad determinada. [Puedes googlear para encontrar una referencia rápida del cron de Linux.] Es muy sencillo de manejar.
Para programar el cron de Linux, debes usar el servidor pantuflo. Es decir, tu cron (=tu lista de tareas programadas) debe estar instalado en pantuflo. Te preguntarás por qué: básicamente la razón es que si editas el cron en una estación y esta se encuentra apagada, tus tareas no se ejecutarán. El servidor pantuflo está siempre encendido y esto garantizará que tus tareas serán ejecutadas.
Por tanto, en primer lugar tendríamos que abrir un SSH a pantuflo. Una vez iniciada la sesión, debemos editar el cron. Podemos usar
$ crontab -e
Esto abrirá el editor predeterminado que tengas configurado. Si no tienes ninguno, se te dará elegir entre los instalados en el sistema. Puedes definir uno en concreto exportando la variable de entorno EDITOR, de la siguiente forma:
$ export EDITOR=/usr/bin/nano
En el caso en el que quiera usar nano como editor predeterminado. Puedes usar vim, emacs, etcétera. Una vez que estés editando tu crontab, puedes definir las copias de seguridad que quieras. Imaginemos que quieres realizar una copia de seguridad de la carpeta $HOME/aso todos los días, a las 4 de la mañana. La línea concreta de cron tendría la siguiente pinta:
00 04 * * * ebackup $HOME/aso/ micuentadecorreo@gmail.com
La línea anterior ejecutaría el comando ebackup todos los días a las 4 de la mañana. Si quiero añadir más copias de seguridad, no tengo más que añadirlas detrás, una por línea, en el mismo editor. Por ejemplo:
# Backup del directorio aso a las 5,30h todos los días 30 05 * * * ebackup $HOME/aso micuentadecorreo@gmail.com # Backup del directorio redes todos los días a las seis de la mañana 00 06 * * * ebackup $HOME/redes micuentadecorreo@gmail.com # Backup del directorio Documentos cada media hora. Si, soy un paranoico. */30 * * * * ebackup $HOME/Documentos micuentadecorreo@gmail.com
Como véis, las posibilidades son infinitas. Una vez que se han definido y programado todas las tareas que consideremos oportunas, guardaremos el fichero, y cron nos diría si lo hemos hecho bien:
$ new cron installed.
La sintaxis del fichero que hemos editado es correcta. Si queremos ver nuestro cron, podemos hacerlo con el comando crontab -l.
Con esto podemos tener asegurado nuestros ficheros más importantes ante cualquier tipo de desastre.