Copias de seguridad remota

Había pensado en Bittorrent Sync pero no sé si es la mejor opción...
Quiero hacer copias de seguridad en remoto, en concreto desde la oficina (con un Windows Home Sever) a casa (Manjaro/Mint) sólo en modo lectura, no bidireccional.
¿Algún programa recomendado para esto, o miro directamente el BittorrentSync? En la oficina trabajamos directamente sobre los archivos del servidor, no sé si tendré algún problema por esto.
En cuanto a la conexión no creo que tenga problema, con 10mb de subida creo que me bastará. Eso sí, si puede ser me gustaría que se pudieran configurar los backups para hacerlos por ejemplo por la noche y así no se usa el ancho de banda en horario de trabajo :)
Podrías configurar un servidor ssh en la máquina windows, conectarte a él desde casa y hacer el backup con rsync.
Si te montas una VPN, server FTP o semejante creo que lo tendrás fácil para programar algún programa para que se encargue de ellos, las copias de seguridad de servidores no es sincronizar archivos sino archivos de copias de seguridad (archivos comprimidos) que seria mas bien lo que dices en modo lectura, pero si necesitas solo sincronizar si, puede ser una opción viable como puede ser Wala, dropbox, drive, rsync, etc.
Rsync te permite modificar los valores necesarios para que sea sincronización unilateral si lo deseas y es la base para casi todos los sistemas de sincronizacion de archivos.

Pero no hagas copias de seguridad en remoto, hazlas en local y luego transfierelas al equipo remoto. U otra opción es tener un ftp en el server de la oficina y seas tu el que se conecte a el y saque los datos.
En principio quería una copia exacta sin comprimir del servidor, estoy mirando la opción de ssh, aunque lo del ftp no me desagrada y lo tengo ya montado.
¿Algún sistema de backup recomendado? Porque hacer así sin más por ftp lo veo poco seguro...
Un saludo y gracias por las ideas!
una copia de unos directorios concretos? La mejor y mas sencilla solucion es rsync over ssh.

Te puedes cronear un script casero o buscarte scripts prehechos por google, internet esta repleto de ellos.

Para esa simple tarea yo no me meteria a montar backup managers ni milongadas, te van a dar mas dolores de cabeza y necesitaras mas tiempo de montaje que otra cosa.

Con 5 minutos de configuracion de las keys puede ser tan sencillo como cronear esto:

rsync -avz -e ssh  user@host:/path/to/direcoty/to/backup /backup/directory
Creo que me voy a decidir por rsync, un par de dudas.
Tengo ip dinámica, supongo que no habrá problema por usar no-ip o algún servicio de estos, ¿no?
Y por último, haría las copias en un disco dedicado solo para eso, ¿sería recomendable desmontar el disco mientras no está funcionando? Si es así no sé si sería mucho lío automatizarlo en un script para que monte/haga copia/ desmonte. Más que nada para no hacerlo trabajar, o eso da igual?
Gracias por la ayuda!
flap0 escribió:Creo que me voy a decidir por rsync, un par de dudas.
Tengo ip dinámica, supongo que no habrá problema por usar no-ip o algún servicio de estos, ¿no?
Y por último, haría las copias en un disco dedicado solo para eso, ¿sería recomendable desmontar el disco mientras no está funcionando? Si es así no sé si sería mucho lío automatizarlo en un script para que monte/haga copia/ desmonte. Más que nada para no hacerlo trabajar, o eso da igual?
Gracias por la ayuda!


Para la ip dinamica, yo uso no-ip, usa el host que te den en vez de la ip a la hora de meter el host remoto y listo, 0 problemas. No olvides automatizar el cambio de ip en las dns con el programilla que te proporcionan.

Lo de desmontar, no seria complicado crear un script que haga ejecuciones remotas para montar desmontar la unidad. Eso si, el user remoto para el backup necesitaria permisos para el montaje/desmontaje, o ser root.

seria algo asi (escribo el bash-script al vuelo y sin testear, probablemente contenga errores y no tiene ningun chequeo de errores).

#!/bin/bash
ssh user@host 'mount /backup/directory'
rsync -avz -e ssh  /local/directory user@host:/backup/directory
ssh user@host 'umount /backup/directory'


Esto se ejecutaria en el equipo cliente, preferiblemente croneado. Conecta al servidor remoto a donde enviara el backup, monta el directorio, despues con rsync hace backup del directorio local /local/directory al directorio remoto /backup/directory y para terminar desmonta el directorio. Yo añadiria un chequeo de la salida del primer comando ssh, para detener el script en caso de que haya un return code erroneo (!= 0).

A mi personalmente me gusta mas remontar el directorio como readonly en vez de desmontarlo. Vamos, pones el /backup/directory en fstab como ro para que el sistema lo monte en solo lectura y en vez de un mount normal le metes un mount -o remount=rw para que monte el directorio en modo escritura antes del rsync y despues otro con -o remount=ro para devolverlo a modo lectura.

Ah, y para automatizar tanto el rsync como los comandos remotos via ssh necesitaras usar par de claves para las conexiones ssh, osino te pedira password de manera interactiva, lo que no nos sirve para automatizar el proceso.
Gracias por las respuestas, parece que voy a necesitar más de lo que pensaba, en cuanto tenga tiempo me pondré a ello!
7 respuestas