====== 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