jueves, 3 de septiembre de 2009

Backup Incremental con Rsync Simple y sencillo

En esta segunda parte voy a explicar cómo tengo espejado la información del servidor de archivos.
Los backup son dos, de los cuales uno (como expliqué en la primera parte) se comprime y divide en partes con DAR para volcarlos en dvds.
 
El primero esta archivado en una unidad NFS en un servidor remoto y el segundo esta en un disco local extra que se monta y desmonta  al solo efecto de guardar el backup.
 
La base de los backups que realizo en distintos servidores es una simple linea en el crontab:
 
fileserver:~# crontab -l
# m h  dom mon dow   command
20 20 * * 1-5 rsync -aru --inplace  /home/comercial/ /home/copia/comercial/
10 20 * * 1-5 /root/rbackup.sh
 
la unica diferencia en el script del segundo es que tiene que montar y desmontar la unida de disco local.
 
En caso de perdida de información, restaurarla es tan sencillo como copiar del destino al origen en forma parcial o total.
 
Hice algo más avanzado con este backup en base al ejemplo de copias incrementales disponible en el sitio de samba team.
 
Y en definitiva terminó siendo un backup más además del que ya tenia, pero el beneficio que le encontré es que se puede restaurar la información en forma casi instantanea.
 
 
y este es el script con el que lo hago:
 
#!/bin/sh
 
# This script does personal backups to a rsync backup server. You will end up
# with a 7 day rotating incremental backup. The incrementals will go
# into subdirectories named after the day of the week, and the current
# full backup goes into a directory called "current"
# tridge@linuxcare.com
 

# directory to backup
# BDIR=/home/academico
 
# directorio de copias incremental
BACKUPDIR=`date +%A`
 

export PATH=$PATH:/bin:/usr/bin:/usr/local/bin
 
# borrar la copia de 7 dias anterior
rmdir /academico/$BACKUPDIR
 
# now the actual transfer
rsync -aru --inplace --backup --backup-dir=/academico/`date +%A` /home/academico/ /academico/current
 
restaurar Backup
 
en este caso depende a que estado anterior de la información queremos volver.
 
si la perdida es total, copiamos todo el contenido de /academico/current al lugar de origen
Si queremos regresar a algun dia anterior copiamos el contenido del día elegido (lunes, martes, etc)
en el directorio de origen
 
 
 

No hay comentarios: