====== Copia De Seguridad Con Rdiff-backup ======
===== Introducción =====
''rdiff-backup'' es un programa para hacer copias de seguridad. Permite hacer una copia espejo de un directorio y guardarlo en otro (al igual que ''rsync'' o el comando ''cp'').
===== Instalación =====
sudo aptitude install rdiff-backup
===== Hacer una copia de seguridad =====
sudo rdiff-backup /origen /destino
La copia de seguridad de la ultima versión de nuestros ficheros se encuentran en /destino.
Se creara un directorio dentro llamado rdiff-backup-data que contiene las diferencias con las versiones anteriores de los ficheros quedaría así **/destino/rdiff-backup-data**
===== Listar las copias de seguridad disponibles =====
sudo rdiff-backup -l /backups
(%%--list-increment-sizes%% permite ver el espacio ocupado por cada copia de seguridad)
===== Eliminar las antiguas copias de seguridad =====
Por ejemplo, eliminar todas las copias de seguridad con más de 7 días de antigüedad:
sudo rdiff-backup --remove-older-than 7D --force /backups
===== Restaurar =====
Por ejemplo para recuperar un fichero /source/mifichero.txt como estaba hace 3 días y guardarlo en /source/antiguo.txt:
sudo rdiff-backup -r 3D /backups/mifichero.txt /source/antiguo.txt
(-r de "restore”; 3D = 3 Days = 3 días. También podemos especificar la hora, minutos, e incluso una fecha precisa. Ver la documentación)
===== Ejemplo de automatización =====
Aquí un ejemplo; Vamos a hacer una copia de seguridad diaria de las carpetas personales (''/home'') y guardarlas en ''/var/rdiff.backups/home'', conservando 30 días de historial de ficheros. Excluiremos los ficheros con más de 50 MB de tamaño.
Como usuario root creamos el fichero ''/etc/cron.daily/rdiff_backup_home'' conteniendo:
#!/bin/bash
test -x /usr/bin/rdiff-backup || exit 0
logger "rdiff_backup_home: Eliminación de antiguos backups (>30 días)"
/usr/bin/rdiff-backup --remove-older-than 30D --force /var/rdiff.backups/home
logger "rdiff_backup_home: Backup del directorio /home (únicamente ficheros <50MB)."
/usr/bin/rdiff-backup --max-file-size 50000000 /home /var/rdiff.backups/home
logger "rdiff_backup_home: Fin del backup."
Convertimos este fichero en ejecutable:
chmod 755 rdiff_backup_home
En adelante, se hará una copia de seguridad diaria de las carpetas en ''/home''
''rdiff-backup'' permitirá recuperar las antiguas versiones de los ficheros hasta con 30 días de antigüedad.
Para forzar una copia de seguridad, escribimos:
sudo /etc/cron.daily/rdiff_backup_home
Para listar las copias de seguridad efectuadas, escribimos:
sudo rdiff-backup -l /var/rdiff.backups/home
Para restaurar un fichero, ejemplo:
sudo rdiff-backup -r 3D /var/rdiff.backups/home/toto/mifichero.txt /home/toto/antiguo.txt
Para ver si la copia de seguridad se ha desarrollado correctamente vemos en ''/var/log/syslog''. Escribimos:
grep rdiff /var/log/syslog