Tengo dos máquinas Ubuntu, una computadora portátil y una computadora de escritorio. Lo que deseo hacer es crear una carpeta en ambas máquinas en las rutas 'ruta1' y 'ruta2'. Quiero configurar la sincronización entre las dos carpetas siempre que estén conectadas a la misma red de área local (escritorio a través de Ethernet y computadora portátil a través de WLAN). Entonces, por ejemplo, si creo un archivo path1 / x, también aparecerá en path2 como path2 / x.
¿Hay alguna manera de hacer esto? [Está bien si la sincronización de eliminación no funciona y tengo que eliminar manualmente un archivo de ambos directorios simultáneamente]
networking
sync
file-sharing
shared-folders
ajolote
fuente
fuente
Respuestas:
[Respondiendo mi propia pregunta cuando encontré una buena manera de hacer esto]
Use la
unison
herramienta desarrollada por Benjamin Pierce en U Penn.Supongamos que tiene dos directorios,
/home/user/Documents/dirA/
y/home/user/Documents/dirB/
Para sincronizar estos dos, puede usar:
~ $
unison -ui text /home/user/Documents/dirA/ /home/user/Documents/dirB/
En la salida,
unison
se mostrarán todos y cada uno de los directorios y archivos que sean diferentes en los dos directorios que solicitó sincronizar. Se recomendará sincronizar aditivamente (replicar el archivo faltante en ambas ubicaciones) en la ejecución inicial, luego crear y mantener un árbol de sincronización en su máquina, y en las ejecuciones posteriores implementará una sincronización verdadera (es decir, si elimina un archivo.../dirA
, también se eliminará.../dirB
. También puede comparar todos y cada uno de los cambios y, opcionalmente, elegir sincronizar hacia adelante o hacia atrás entre los dos directorios.Opcionalmente, para iniciar la interfaz gráfica, simplemente elimine la
-ui text
opción de su comando, aunque considero que escli
más simple y rápido de usar.Más sobre esto: Tutorial de Unison en la documentación de usuario de Unison .
fuente
Consulte este tutorial sobre cómo sincronizar carpetas con rsync .
Salud
fuente