By | 29 septiembre, 2016

BackupPC es una herramienta formidable para respaldar y guardar un registro histórico de respaldos en el storage del servidor. Pero está orientado al uso mediante interfaz web, y cuando queremos vincularos con el servidor por la línea de comandos, es algo complicado.

Recuperar el directorio /usr/local/sbin en forma automática se puede usar este comando, ejecutado en el servidor a recuperar.


cd /usr/local; \
ssh backuppc@server.backuppc \
/usr/share/backuppc/bin/BackupPC_tarCreate \
-h "$(hostname -f)" -n -1 -s "$(pwd)" "sbin" | tar xf -

Explicándolo:

cd /usr/local: es el directorio ‘source’ respaldado, registrado en $Conf{RsyncShareName}
ssh backuppc@server.backuppc: supone que tenemos acceso ssh al servidor backuppc y las credenciales como el usuario bakcuppc. Si se accede como root se puede ejecutar con sudo -u backuppc pues el comando BackupPC_tarCreate lo debe ejecutar el usuario backuppc obligatoriamente.
-h $(hostname -f): va a ser reemplazado con el nombre del host respaldado, desde el cual se ejecuta el comando. Si BackupPC lo conoce por la IP se puede poner directamente luego del -h.
-n -1: recupera el último backup realizado. Se puede colocar el numero de backup se se desea otro.
-s $(pwd): va a ser reemplazado con el directorio actual del host respaldado, desde el cual se ejecuta el comando ssh. Es el nombre registrado en $Conf{RsyncShareName}.
sbin: es la carpeta/archivo a recuperar. Se puede utilizar un punto "." si se desea recuperar todo el contenido.
tar xf –: el comando BackupPC_tarCreate que se ejecuta mediante ssh en el servidor BackupPC genera un archivo tar en stdout. Este tar xf - se ejecuta localmente en el host respaldado y extrae del tar los archivos en el disco local.

Se puede mejorar haciendo un gzip antes de pasar los datos por la red.

Si alguien conoce un método más óptimo, agradezco lo comparta y, si encuentro algo mejor, lo documentaré por aqui.

3 Replies to “Recuperar desde BackupPC por línea de comandos”

  1. Max Orúe

    Hola Pilas,

    Podría responder estas dos dudas sobre Backuppc?

    1- Cómo restaurar con Backuppc un servidor teniendo el directorio salvado pero no teniendo el xfer de configuración?.

    2- Por qué el backuppc renombra los directorios y archivos de salva anteponiendole una F en los nombres?

  2. pilasguru Post author

    Hola Max:

    1)
    Lo primero que debes tener es el servidor BackupPC accediendo normalmente (como para hacer respaldos) al cliente, pues es el servidor el que restaura los archivos.

    En el articulo puedes ver que el comando ingresa al servidor y le pide que recupere los archivos, de esa forma se automatiza la recuperación.

    De todas formas, puedes usar el comando BackupPC_tarCreate para hacerte una copia «limpia» de uno de los respaldos del servidor, con eso luego lo abres y obtienes el o los archivos que necesitas.

    2)
    El pool de resplado de BackupPC guarda los archivos en un índice (base de datos) y los accedes a traves de la aplicación. De ninguna forma accedes al filesystem directamente para recuperar (a menos que quieras trabajar extra)

    Actualmente estoy migrando mi sistema de respaldo a Burp Backup que ofrece eso acceder al filesystem directo para obtener archivos respaldados y ademas todo lo que necesito de automatización.

  3. Max Orúe

    Muchas gracias por las respuestas fueron de mucha ayuda. Principalmente la explicación de los índices. Agradecido

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *