Cómo instalar y configurar rsnapshot para realizar backups incrementales

rsnapshot

La tarea de backup es fundamental para resguardar la información que tenemos en nuestros equipos, aunque está claro que una cosa es hacerlo en casa y otra muy distinta es tener que proteger los datos de una universidad o una compañía, en donde el volumen de información es mucho mayor y hay responsabilidades diferentes. Por ello la necesidad de contar con herramientas potentes y versátiles es mucho mayor, aunque está claro que estas también pueden ser utilizadas por cualquiera de nosotros en casa.

Ahora vamos a ver cómo instalar y configurar rsnapshot para realizar backups incrementales, se trata de una herramienta que no sólo nos permite resguardar información en forma segura y simple sino que además lo hace en forma muy eficiente. Ejemplo de esto que decimos es el hecho de que el espacio requerido para el almacenamiento, sin importar el uso que le demos, es apenas superior al de un backup ya que luego lo único que se almacena es una copia de aquellos archivos que son modificados. Otra ventaja de rsnapshot es que los backups son enlaces duros a los backups anteriores, esto siempre y cuando no haya habido cambios en los backups claro está.

Para poder utilizar rsnapshot tenemos que cumplir algunas cuestiones, y es que se trata de una herramienta que a su vez se basa en otras para su funcionamiento. Por ejemplo, vamos a necesitar rsync instalado y también contar con acceso a través de SSH al ordenador en el cual vamos a almacenar nuestros backups, es decir que debemos tener instalado SSH en ambos equipos y configuradas las llaves para poder acceder sin necesidad de ingresar la contraseña ‘a mano’.

Así pues, en primer lugar vamos a configurar esto:

ssh-keygen -t rsa

Aquí SSH nos pedirá la frase, pero dado que vamos a ejecutar comandos en forma remota queremos interacción 0 así que vamos a desechar esto pulsando la tecla Intro/Enter las 2 veces que se nos solicite. Al finalizar tendremos 2 archivos nuevos en ~/.ssh: uno es id_rsa y contiene la clave de identificación privada, el otro es id_rsa.pub y contiene la clave pública. Este último lo copiamos al servidor remoto mediante el comando ssh-copy-id, que nos pide la contraseña de la cuenta en dicho servidor y luego se encarga de subirlo y almacenarlo en la forma debida, es decir creando los directorios correspondientes y estableciendo los permisos que sean necesarios:

# ssh-copy-id -i ~/.ssh/id_rsa.pub usuario@servidorremoto

Luego instalamos rsync y rsnapshot:

# sudo apt-get install rsync rsnapshot

Ahora editamos el archivo de configuración de rsnapshot para establecer el directorio en el cual vamos a realizar los backups:

# nano /etc/rsnapshot.conf

Modificamos la sección snapshot_root para indicar donde almacenaremos los backups en el ordenador remoto:

# snapshot_root       /disco1/backup

Establecemos el intervalo en el cual rsnapshot realizará su tarea (en este ejemplo, cuatro veces al día es decir cada seis horas), y para ello quitamos el # delante del que vayamos a utilizar, y lo modificamos a gusto, por ejemplo:

interval hourly 4

Ahora establecemos las carpetas locales que vamos a sincronizar, para lo cual las añadimos junto a la opción de ‘backup’:

backup   /home/   localhost/

backup   /etc         localhost/

Hay que destacar que los campos van separados por ‘tabs’ es decir que luego de ingresar uno pulsamos la tecla de tabulación, y así suscesivamente. También podemos indicar que archivos queremos excluir de nuestros backups, para lo cual utilizamos una línea dedicada a cada uno de ellos:

exclude_file   /etc/rsnapshot.conf

exclude_file  /etc/bashrc.conf

Luego guardamos y finaliza esta configuración, pero por suerte tenemos la posibilidad de comprobarla mediante un parámetro:

# rnapshot configtest

Si todo marcha bien recibiremos un mensaje que dice ‘Sintax OK’.

Otra opción es la de ejecutarlo en modo de prueba, para lo cual ingresamos:

# rsnapshot -t hourly

Por último, simplemente nos queda ejecutar rsnapshot, lo cual hacemos adjuntando el modo de ejecución, que debe coincidir con el intervalo que hemos utilizado: hourly, daily, weekly o monthly.

En nuestro caso:

# rsnapshot hourly

Veremos que dentro de /disco1/backup estarán las carpetas /daily.0/localhost/home y daily.0/localhost/etc, y dentro de ellas estarán los mismos contenidos que en las carpetas del equipo que deseábamos resguardar. Eso es todo, y gracias a rsnapshot a partir de ahora ya podremos contar con backups incrementales en nuestro sistema.


Categorías

Ubuntu

Willy Klew

Ingeniero en Informática, soy un fanático de Linux, Android, la programación, redes y todo lo que tenga que ver con las nuevas tecnologías. Ex... Ver perfil ›

Escribe un comentario