Sincronización por ssh

Imagen de Pepe Trujillo
0 puntos

Dispongo de servidor Linux y estoy buscando para mi cliente Ubuntu:

Un cliente que haga una sincronización, un backup permanente (no diario, sino permanente), un cliente basado en ssh que al igual que sshfs y recurriendo al sshfs como servidor no necesite de otro servicio más en el servidor como los casos que he visto; sino que como cliente se encargue de mantener sincronizadas carpetas señaladas en el servidor ssh y en el cliente. Parece una cosa más sencilla que los programas de autonube.

He mirado y he visto docenas de peticiones similares en muchos foros (sincronización instantánea se acerca mucho a lo que digo). Las respuestas son de tres tipos:

1º Utilizar rsync sobre ssh y el cron. Me parece meter un trastor en un tiesto (cada vez que arranca rsync busca por todo el disco a ver qué ha pasado desde que él estuvo, en vez de vigilar en tiempo real).
2º Utilizar dropbox, drive o similar. Opción de pago o gratis pero propietaria y en la que además no controlas el almacen que te es completamente ajeno.
3º Montarse su propia nube (además de owncloud y sparkleshare hay otros que no están en Debian como Seafile, con muy buena prensa, y otros menos utilizados). Pero esto también me parece excesivo: estoy interesado en un cliente que no necesite más programa en el servidor que el ssh server.

¿Alguien sabe de alguna aplicación que pudiera servir para esta funcionalidad?

Imagen de Gabriel_M
+1
+1
-1

... deseas es que un conjunto de archivos que se replican en dos servidores diferentes, que se modifican de forma independiente, y ante cualesquiera cambio realizado en una réplica se propague inmediatamente a la otra, de modo que ambas réplicas se mantengan permanentemente sincronizadas.
Unison es la herramienta de sincronización de archivos de código abierto que soporta de forma nativa la sincronización de archivos bidireccional, disponible como una herramienta de línea de comandos, así como con un programa de interfaz gráfica de usuario con interfaz GTK +, para el que así lo prefiera.
Luego de instalarlo desde los repositorios, requiere la creación de un perfil de Unison en ambos servidores que tengan réplicas para sincronizar, el perfil de Unison es un archivo de texto con extensión . prf, que especifica la configuración de sincronización de archivos, las raíces de directorio, incluir o ignorar los paths, etc.
Este archivo de perfil de Unison se puede crear en cualquier parte del sistema, en cuyo caso debe definir entorno Unison variable apuntando a la ruta de directorio para el perfil. Si no se define la variable Unisn, Unison busca perfiles en el directorio $ HOME / .unison por defecto.
Este es un ejemplo de un archivo de configuración de Unison:

# Two root directories to sync.
# You can use ssh:// to sync over SSH
root = /home/pepe/sync_folder
root = ssh://dev@192.168.1.10//home/pepe/sync_folder

# If you want one-way mirroring from one replica to the other, specify the source replica using "force" as follows.
# force = /home/pepe/sync_folder

# If you want Unison to run without any user input, try "batch" mode.
batch = true

# If you don't want to be prompted, and just accept Unison's recommendation:
auto = true

# Optionally, you can sync specific sub directories only (under the root).
# path = dir1
# path = dir2

# Optionally, you can ignore specific files or directories that are matched with regular expressions.
# ignore = Name *.o
# ignore = Name *~
# ignore = Path */temp/archive_*

# If you want to ignore difference in file props:
perms = 0

La información más importante del archivo lo constituyen los dos directorios raíz para sincronizar.
Unison soporta entre otros a SSH, se puede especificar el directorio raíz en un host remoto mediante el uso del siguiente formato:

root = ssh://user@remote_host//absolute/path/to/root
root = ssh://user@remote_host/relative/path/to/root

+1
+1
-1
Imagen de Pepe Trujillo
+1
0
-1

No he tenido tiempo de probar la propuesta.

Parece que es lo que estoy buscando.

En cuanto tenga un hueco lo pruebo y comento el resultado.

Muchas gracias.

+1
0
-1