25,9K
Este completo tutorial explica¿Qué es el unísono?herramienta de sincronización de archivos, cómoinstalar Unison en Linuxy comosincronizar archivos con Unisonentre dos directorios y/o discos diferentes en el mismo sistema y dos máquinas Linux diferentes a través de una red de área local.
¿Qué es el unísono?
Unísonoes una herramienta de sincronización de archivos gratuita, de código abierto, multiplataforma y bidireccional. Se utiliza para almacenar dos réplicas de archivos y directorios en dos sistemas diferentes o discos diferentes en el mismo sistema.
Las réplicas de archivos y directorios se modifican por separado y luego se actualizan propagando los cambios en cada réplica a la otra.
Para decirlo en términos simples, cualquier cambio en una ubicación se replicará en otra ubicación y viceversa.
Al ser una aplicación multiplataforma, puedes sincronizar archivos y directorios entre computadoras que se ejecutan con diferentes sistemas operativos.
Por ejemplo, puede sincronizar archivos almacenados en una máquina Linux con máquinas Windows o Unix y viceversa. No solo se sincronizará el contenido del archivo, sino también la propiedad y los permisos del archivo.
Si el contenido es diferente en ambas réplicas, se produce un conflicto. Unison detectará y mostrará dichos conflictos. En ese caso, debe indicarle a Unison qué réplica debe anular a la otra. Las actualizaciones que no entren en conflicto se propagarán automáticamente.
Unison funciona bien con cualquier par de computadoras conectadas a una red de área local o a Internet. Los archivos se sincronizan con un sistema remoto a través de unssh cifradoconexión.
Otra característica notable de Unison es que funciona bien en enlaces lentos como las conexiones PPP. Similar asincronización, Unison solo transferirá las partes de un archivo que hayan sido modificadas.
La implementación incorporada del algoritmo rsync de Unison hace que la transferencia de actualizaciones a archivos existentes sea muy rápida.
Unison es un programa a nivel de usuario, por lo que no es necesario modificar el kernel ni tener privilegios de superusuario en ninguno de los hosts.
El programa Unison es creado porBenjamín C. Piercey se publica bajo licencia GPL. Funciona bajo plataformas GNU/Linux, Windows y Unix.
Instalar Unísono en Linux
Unison está disponible en los repositorios predeterminados de los repositorios oficiales de muchos sistemas operativos Linux.
Para instalar Unison en Alpine Linux, ejecute:
$ sudo apk add unison
Instale Unison en Arch Linux y sus variantes como EndeavourOS y Manjaro Linux:
$ sudo pacman -S unison
Debian, Ubuntu, Linux Mint:
$ sudo apt install unison
Fedor:
$ sudo dnf install unison
CentOS 7:
Primero, habilite[CÁLIDO]repositorio:
$ sudo yum install epel-release
Y luego instale al unísono:
$ sudo yum install unison
abiertoSUSE:
$ sudo zypper install unison
También hay una interfaz gráfica simple llamadaunísono-gtkestá disponible para aquellos que prefieren GUI a CLI. Está disponible en los repositorios predeterminados en algunas distribuciones de Linux.
En Alpine Linux, puede instalar Unison-gtk usando el comando:
$ sudo apk add unison-gui
En Arch Linux y sus variantes, instale Unison-gtk usando el comando:
$ sudo pacman -S unison-gtk2
Si tiene un sistema basado en Debian, instálelo usando el siguiente comando:
$ sudo apt install unison-gtk
Tenga en cuenta que si desea sincronizar archivos entre dos sistemas diferentes, debe instalar Unison en todos los sistemas que desee mantener sincronizados. Además, se recomienda la misma versión en ambos sistemas.
Sincronizar archivos con Unison en Linux
Podemos usar Unison en los siguientes tres modos diferentes:
- Sincronizar archivos almacenados en diferentes directorios en la misma máquina,
- Sincronizar archivos y directorios almacenados en diferentes discos en la misma máquina,
- Sincronice archivos y directorios entre máquinas locales y remotas:
- Sincronizar archivos con una máquina remota a través de una conexión de socket directa,
- Sincronice archivos con una máquina remota mediante SSH.
1. Sincronizar archivos almacenados en diferentes directorios en la misma máquina
Para los fines de esta guía, voy a crear dos directorios raíz (es decir, réplicas), a saberdirectory1
ydirectory2
.
$ mkdir ~/directory1
$ mkdir ~/directory2
Coloque algunos contenidos en cualquiera de los directorios anteriores. Guardé algunos archivos y directorios dentro.directory1
.
Echemos un vistazo al contenido dedirectory1
:
$ ls -ltRF directory1/
Salida de muestra:
directory1/: total 7780 drwxrwxr-x 2 sk sk 4096 Oct 2 15:35 dir1/ -rw-rw-r-- 1 sk sk 7779007 Sep 25 16:51 file2 -rw-rw-r-- 1 sk sk 179765 Aug 17 12:51 file1 directory1/dir1: total 140 -rw-rw-r-- 1 sk sk 141729 Aug 6 22:34 file3
Como puedes ver, tengo una carpeta llamadadir1
y otros dos archivos a saberfile1
yfile2
en la raíz dedirectory1
. Dentro dedir1
, hay otro archivo llamadofile3
.
Y eldirectory2
la réplica no tiene ningún contenido.
$ ls -ltRF directory2/ directory2/: total 0
Sincronicemos estos dos directorios al unísono con el comando:
$ unison directory1/ directory2/
Se le preguntará si desea continuar sincronizando el contenido dedirectory1
condirectory2
. Simplemente presioneENTER
llave. A continuación, Unison le pedirá que confirme los archivos y directorios que desea sincronizar. PrensaENTER
o presionef
para confirmar los archivos y carpetas que desea sincronizar. Finalmente, presioney
y golpearENTER
clave para continuar con la propagación de actualizaciones.
Contacting server... Looking for changes Warning: No archive files were found for these roots, whose canonical names are: /home/sk/directory1 /home/sk/directory2 This can happen either because this is the first time you have synchronized these roots, or because you have upgraded Unison to a new version with a different archive format. Update detection may take a while on this run if the replicas are large. Unison will assume that the 'last synchronized state' of both replicas was completely empty. This means that any files that are different will be reported as conflicts, and any files that exist only on one replica will be judged as new and propagated to the other replica. If the two replicas are identical, then no changes will be reported. If you see this message repeatedly, it may be because one of your machines is getting its address from DHCP, which is causing its host name to change between synchronizations. See the documentation for the UNISONLOCALHOSTNAME environment variable for advice on how to correct this. Donations to the Unison project are gratefully accepted: https://www.cis.upenn.edu/~bcpierce/unison Reconciling changestinue.[<spc>] / file1 directory1 directory2 dir ----> dir1 [f] f file ----> file1 [f] f file ----> file2 [f] f Proceed with propagating updates? [] y Propagating updates UNISON 2.48.4 started propagating changes at 15:43:29.75 on 02 Oct 2020 [BGN] Copying dir1 from /home/sk/directory1 to /home/sk/directory2 [END] Copying dir1 [BGN] Copying file1 from /home/sk/directory1 to /home/sk/directory2 [END] Copying file1 [BGN] Copying file2 from /home/sk/directory1 to /home/sk/directory2 [END] Copying file2 UNISON 2.48.4 finished propagating changes at 15:43:29.81 on 02 Oct 2020 Saving synchronizer state Synchronization complete at 15:43:29 (3 items transferred, 0 skipped, 0 failed)
Ahora, todos los contenidos dedirectory1
será replicado adirectory2
. Puedes verificarlo usandols
dominio:
¿Ver? El contenido de ambas réplicas es idéntico. Como ya mencioné, los permisos de archivos y los números de inodo de archivos y carpetas en ambas ubicaciones también están sincronizados. Puede ver que los permisos y los inodos también son idénticos en el resultado anterior.
¿Notaste las marcas de flecha en el resultado al sincronizar los directorios? Por ejemplo, deberías haber notado las siguientes líneas en el medio del resultado:
directory1 directory2 dir ----> dir1 [f] f file ----> file1 [f] f file ----> file2 [f] f
Las marcas de flecha indican ladirecciónque es necesario propagar el cambio. En nuestro caso, las flechas apuntan de izquierda a derecha. Significado – eldir1
,file1
yfile2
se propagan a la segunda réplica, es decirdirectory2
.
Ahora crea un nuevo archivo endirectory2
réplica y ver qué pasa.
$ touch directory2/file4
Sincronice las dos réplicas usando el comando:
$ unison directory1/ directory2/
Ahora verás que una flecha apunta de derecha a izquierda. Significa que los cambios en la segunda réplica se propagan a la primera réplica. En otras palabras, el contenido dedirectory2
se replican endirectory1
.
Contacting server... Looking for changes Reconciling changes directory1 directory2 <---- new file file4 [f] f Proceed with propagating updates? [] y Propagating updates UNISON 2.48.4 started propagating changes at 16:04:08.78 on 02 Oct 2020 [BGN] Copying file4 from /home/sk/directory2 to /home/sk/directory1 [END] Copying file4 UNISON 2.48.4 finished propagating changes at 16:04:08.78 on 02 Oct 2020 Saving synchronizer state Synchronization complete at 16:04:08 (1 item transferred, 0 skipped, 0 failed)
Unison reconocerá automáticamente qué archivos deben actualizarse en ambas réplicas. Cuando ejecute Unison por primera vez, tomará nota de la marca de tiempo de modificación, los permisos, la propiedad y el número de inodo de todos los archivos y carpetas en ambas ubicaciones. Según esta información, Unison decidirá qué archivos deben actualizarse cuando vuelva a ejecutar el mismo comando. Como se indicó anteriormente, toda la información se mantendrá bajo~/.unison
directorio.
Para verificarlo usted mismo, modifique el contenido de un archivo existente. Voy a modificar el contenido defile4
endirectory1
réplica.
$ echo "Welcome to OSTechNix" > directory1/file4
Ahora inicie la sincronización nuevamente:
$ unison directory1/ directory2/
Esta vez, Unison sincronizará los archivos modificados.
Contacting server... Looking for changes Reconciling changes directory1 directory2 changed ----> file4 [f] f Proceed with propagating updates? [] y Propagating updates UNISON 2.48.4 started propagating changes at 16:05:27.13 on 02 Oct 2020 [BGN] Updating file file4 from /home/sk/directory1 to /home/sk/directory2 [END] Updating file file4 UNISON 2.48.4 finished propagating changes at 16:05:27.14 on 02 Oct 2020 Saving synchronizer state Synchronization complete at 16:05:27 (1 item transferred, 0 skipped, 0 failed)
Como puede ver en el resultado anterior, Unison ha detectado quefile4
Se ha cambiado en la primera réplica y se ha sincronizado con la segunda réplica.
Si ambas réplicas se modifican y sus contenidos son diferentes, entonces los cambios están en conflicto. En tales casos, Unison le preguntará al usuario cómo propagar las actualizaciones en ambos lados. Los conflictos se mostrarán con flechas izquierda y derecha como se muestra a continuación.
directory1 directory2 new file <-?-> new file file6 []
Si alguna acción predeterminada está indicada por una flecha, simplemente presioneENTER
para pasar al siguiente archivo modificado. Si desea hacer algo diferente con este archivo, puede presionar"<"
o">"
para forzar que el cambio se propague de derecha a izquierda o de izquierda a derecha.
directory1 directory2 new file <==== new file file6 [] <
Si no desea realizar ningún cambio, simplemente presione"/"
para omitir este archivo y dejar ambas réplicas en paz.
1.1. Perfiles al unísono
Usos al unísonoperfilespara sincronizar archivos y carpetas entre dos directorios en la misma máquina o en dos máquinas diferentes. Un perfil no es más que un archivo de texto donde definimos la ruta real de los directorios raíz y las preferencias de ruta que deben sincronizarse. Todos los perfiles se almacenarán en.unison
directorio en su$HOME
directorio.
Cuando ejecuta Unison por primera vez, aparece un perfil predeterminado llamadodefault.prf
se crea bajo~/.unison
directorio. El perfil predeterminado no tiene ninguna preferencia definida. Entonces, todo lo almacenado en una réplica se sincronizará con otra réplica.
También podemos crear perfiles personalizados con la lista de preferencias de ruta. Esto le ayudará a evitar sincronizar las dos réplicas completas.
Usando los perfiles personalizados, podemos indicarle a Unison:
- para sincronizar archivos y carpetas específicos,
- para ignorar un archivo específico o un tipo específico de archivos de la sincronización.
Veamos un ejemplo.
Cree dos réplicas y guarde algunos archivos y carpetas en una réplica y deje la otra vacía.
$ mkdir ~/directory1
$ mkdir ~/directory2
Luego, crea un nuevo perfil llamadodir_profile.prf
:
$ nano .unison/dir_profile.prf
Defina los directorios raíz y las rutas de los archivos y directorios que desea sincronizar:
# Roots of the synchronization root = /home/sk/directory1 root = /home/sk/directory2 # Paths to synchronize path = dir1 path = file2
Las dos raíces se pueden dar en cualquier orden. Unison los ordenará en orden canónico antes de hacer cualquier otra cosa. Si no especifica ninguna ruta, Unison simplemente sincronizará las dos réplicas completas, comenzando desde el par de raíces dado. Si se dan una o más preferencias de ruta, Unison sincronizará solo estas rutas y sus hijos.
En el ejemplo anterior, he definido eldir1
yfile2
debe sincronizarse con otro directorio raíz. Guarde y cierre el archivo.
Después de crear el perfil, inicie el proceso de sincronización usando el comando:
$ unison dir_profile.prf
Se le preguntará si desea continuar sincronizando el contenido dedirectory1
condirectory2
. Simplemente presioneENTER
y luego presionef
para confirmar las rutas a sincronizar. Finalmente presioney
y golpearENTER
clave para continuar con la propagación de actualizaciones.
Contacting server... Looking for changes Warning: No archive files were found for these roots, whose canonical names are: /home/sk/directory1 /home/sk/directory2 This can happen either because this is the first time you have synchronized these roots, or because you have upgraded Unison to a new version with a different archive format. Update detection may take a while on this run if the replicas are large. Unison will assume that the 'last synchronized state' of both replicas was completely empty. This means that any files that are different will be reported as conflicts, and any files that exist only on one replica will be judged as new and propagated to the other replica. If the two replicas are identical, then no changes will be reported. If you see this message repeatedly, it may be because one of your machines is getting its address from DHCP, which is causing its host name to change between synchronizations. See the documentation for the UNISONLOCALHOSTNAME environment variable for advice on how to correct this. Donations to the Unison project are gratefully accepted: https://www.cis.upenn.edu/~bcpierce/unison Reconciling changestinue.[<spc>] | dir1 directory1 directory2 dir ----> dir1 [f] file ----> file2 [f] Proceed with propagating updates? [] y Propagating updates UNISON 2.48.4 started propagating changes at 15:42:32.99 on 01 Oct 2020 [BGN] Copying dir1 from /home/sk/directory1 to /home/sk/directory2 [END] Copying dir1 [BGN] Copying file2 from /home/sk/directory1 to /home/sk/directory2 [END] Copying file2 UNISON 2.48.4 finished propagating changes at 15:42:33.04 on 01 Oct 2020 Saving synchronizer state Synchronization complete at 15:42:33 (2 items transferred, 0 skipped, 0 failed)

Ahora ve a la segunda réplica.directory2
y ver si los contenidos están sincronizados.
1.1. Ignorar archivos de la sincronización
A veces, es posible que no desee sincronizar un archivo específico o un tipo específico de archivos. Si es así, puede definir qué archivos ignorar en el perfil como se muestra a continuación.
ignore=Name text.* ignore=Name .*~ ignore=Name *.pdf
Para obtener más perfiles de muestra, consulteaquí.
1.2. Sincronizar archivos y directorios locales con unison-gtk
Es posible que algunos de ustedes no se sientan cómodos con la línea de comando. Afortunadamente, Unison tiene una interfaz gráfica simple que permite a los usuarios crear perfiles y sincronizar archivos fácilmente según los perfiles a través de una ventana gráfica.
Asegúrate de haber instaladounison-gtk
paquete como se muestra en la sección de instalación anterior. Inicie unison-gtk desde el menú o el iniciador de aplicaciones.
Verá la ventana de selección de perfil en el primer inicio. Si ya ha creado un perfil como se describe, lo verá allí.

Desde la ventana de perfiles, puede crear un nuevo perfil con nuevos directorios raíz y las rutas para sincronizar. O simplemente puede editar el perfil existente y modificar los directorios raíz o agregar nuevos archivos o cambiar las rutas para sincronizar.

Si ya no necesita un perfil, simplemente selecciónelo y haga clic en Eliminar.
Voy a crear un nuevo perfil. Para hacerlo, haga clicAgregarbotón de la ventana de selección de perfil y haga clicAdelante.

Ingrese un nombre adecuado para su nuevo perfil con una pequeña descripción:

Luego elija el tipo de sincronización que desea realizar. Como se trata de sincronización entre dos directorios locales, elegí"local".

Seleccione los dos directorios raíz que desea sincronizar.

Seleccione la siguiente casilla de verificación si uno de sus directorios raíz está en una partición FAT. Este suele ser el caso de una memoria USB.

Finalmente, haga clic en Aplicar para crear el perfil.

El perfil recién creado aparecerá ahora en la ventana de selección de perfil. Selecciónelo y haga clic en Abrir.

El gráfico de Unison ahora le mostrará los cambios que se realizarán en ambos lados. Al igual que la interfaz de línea de comandos de Unison, la acción predeterminada también se indica con una flecha en la interfaz gráfica. Como puede ver en la siguiente captura de pantalla, los archivos se propagan de izquierda a derecha, es decir, de la primera réplica a la segunda réplica. Si el contenido de las réplicas no es idéntico, Unison le pedirá instrucciones sobre qué réplica debe anular a la otra.
Si está satisfecho con las instrucciones para la propagación de cambios, haga clic enIren la barra de herramientas o seleccioneSincronización -> Irdesde la barra de menú.

Una vez que la sincronización se complete exitosamente, verá las marcas de verificación en la sección Estado.

2. Sincronizar archivos y directorios almacenados en diferentes discos en la misma máquina
Los archivos de sincronización entre dos discos son exactamente iguales que los anteriores. Solo asegúrese de haber mencionado la ruta correcta del directorio raíz en el disco externo.
Ahora sabe cómo sincronizar archivos entre dos directorios en el mismo disco duro y en un disco diferente en un sistema local. La siguiente sección explica cómo sincronizar archivos entre dos sistemas diferentes.
3. Sincronizar archivos y directorios entre máquinas locales y remotas
Como se indicó anteriormente, Unison puede sincronizar archivos entre sistemas locales y remotos mediante una conexión de socket directa y mediante una conexión SSH cifrada. Como ya sabes, SSH es mucho mejor y más seguro que el método socket. A los efectos de esta guía, utilizaré el método SSH para sincronizar archivos.
Asegúrate de haber instaladoopenSSH y Unison en ambos sistemas. También asegúrese de que ambos sistemas puedan comunicarse a través de SSH. Tenga en cuenta que suLos sistemas locales y remotos deben tener la misma versión de Unison..
Para verificar la versión de Unison, ejecute el siguiente comando en su sistema local y remoto:
$ unison -version unison version 2.48.4
Dado que los archivos se sincronizarán mediante SSH, no importa si el sistema remoto tiene unison-gtk o no. ¡La interfaz de línea de comandos Unison es suficiente en una máquina remota! En su máquina local, puede utilizar una interfaz al unísono gráfica o textual.
3.1. Sincronice archivos y directorios entre máquinas locales y remotas desde la línea de comandos
Ahora sincronicemos eldirectory1
de nuestro sistema local aldirectory1
en un sistema remoto usando unísono ejecutando el siguiente comando:
$ unison directory1/ ssh://[email protected]/directory1/
Aquí,[email protected]
es el nombre de usuario y la dirección IP de mi sistema remoto.
Se le pedirá que ingrese la contraseña de su usuario remoto. Luego presione ENTER para aceptar sincronizar el contenido dedirectory1
de máquina local condirectory
1 de máquina remota. Entonces presionef
para confirmar las rutas a sincronizar. Finalmente presioney
y golpearENTER
clave para continuar con la propagación de actualizaciones.
Contacting server... [email protected]'s password: Connected [//ostechnix//home/sk/directory1 -> //ubuntuserver//home/ostechnix/directory1] Looking for changes Warning: No archive files were found for these roots, whose canonical names are: /home/sk/directory1 //ubuntuserver//home/ostechnix/directory1 This can happen either because this is the first time you have synchronized these roots, or because you have upgraded Unison to a new version with a different archive format. Update detection may take a while on this run if the replicas are large. Unison will assume that the 'last synchronized state' of both replicas was completely empty. This means that any files that are different will be reported as conflicts, and any files that exist only on one replica will be judged as new and propagated to the other replica. If the two replicas are identical, then no changes will be reported. If you see this message repeatedly, it may be because one of your machines is getting its address from DHCP, which is causing its host name to change between synchronizations. See the documentation for the UNISONLOCALHOSTNAME environment variable for advice on how to correct this. Donations to the Unison project are gratefully accepted: https://www.cis.upenn.edu/~bcpierce/unison Press return to continue.[<spc>] Waiting for changes from server Reconciling changes local ubuntuserver file ----> file1 [f] f file ----> file2 [f] f Proceed with propagating updates? [] y Propagating updates UNISON 2.48.4 started propagating changes at 14:49:18.44 on 03 Oct 2020 [BGN] Copying file1 from /home/sk/directory1 to //ubuntuserver//home/ostechnix/directory1 [BGN] Copying file2 from /home/sk/directory1 to //ubuntuserver//home/ostechnix/directory1 [END] Copying file1 [END] Copying file2 UNISON 2.48.4 finished propagating changes at 14:49:18.45 on 03 Oct 2020 Saving synchronizer state Synchronization complete at 14:49:18 (2 items transferred, 0 skipped, 0 failed)

El comando anterior replicará el contenido dedirectory1
del sistema local aldirectory1
en el sistema remoto. Ahora agregue un archivo nuevo o actualice un archivo existente e intente sincronizar nuevamente. Deberías ver resultados similares en ambos lados.
Si desea sincronizar el contenido con otro lugar que no sea el directorio principal del sistema remoto, debe especificar la ruta absoluta del directorio remoto agregando unbarra diagonal adicional entre el nombre del host remoto y el comienzo de la rutacomo abajo:
$ unison directory1/ ssh://[email protected]//sync/the/files/here/
Si no desea sincronizar todo el directorio, simplemente cree un perfil personalizado y defina las rutas para sincronizar como se describe en la sección titulada1.1. Perfiles al unísonoarriba.
3.2. Sincronice archivos y directorios entre máquinas locales y remotas usando unison-gtk
Inicie la aplicación Unison-gtk desde el menú o el iniciador. Hacer clicAgregaren la ventana de selección de perfil para crear un nuevo perfil.

Haga clic en Adelante.

Ingrese el nombre del perfil de Unison y su descripción y haga clic en Adelante.

Aquí está el paso importante. Elegir“ssh”desde el cuadro desplegable Tipo de sincronización. Ingrese la dirección IP o el nombre de host del sistema remoto y el nombre de usuario remoto. Marque también la casilla "Habilitar compresión" para mejorar el rendimiento de la transferencia de datos.

Elija las ubicaciones del directorio local y remoto que desee sincronizar.

Si uno de sus directorios está en una partición FAT, debe marcar esta opción. Este suele ser el caso de las unidades USB.

Haga clic en Aplicar para completar la creación del perfil.

El perfil recién creado aparecerá ahora en la ventana de selección de perfil. Seleccione el perfil y haga clic en Abrir.

Se le pedirá que ingrese la contraseña de su usuario remoto. Ingrese la contraseña y haga clic en Aceptar.

Después de ingresar la contraseña, Unison enumerará los cambios que se propagarán de local a remoto. La acción predeterminada se indica con una flecha. Si no desea la acción predeterminada, presione"de izquierda a derecha"o"De derecha a izquierda"opciones en la barra de menú para indicar qué réplica debe anular a la otra. Finalmente, haga clicIrpara replicar.

Unison ahora replicará todo el contenido del directorio local con el directorio remoto. Una vez completada la sincronización, verá la marca de verificación en la sección Estado.

Puede verificar el contenido de archivos y directorios en ambas ubicaciones.
El método anterior sincronizará todo el contenido de la réplica local con la réplica remota. Si desea sincronizar archivos o directorios específicos, cree un perfil personalizado y defina las rutas para sincronizar como se describe en la sección titulada1.1. Perfiles al unísonoarriba.
3.3. Configurar la autenticación basada en claves SSH (opcional)
Siempre que sincronice archivos entre dos sistemas diferentes a través de SSH, deberá ingresar la contraseña del usuario remoto. Si no desea ingresar la contraseña cada vez, puede configurar la autenticación SSH sin contraseña como se describe en el enlace a continuación. No genere un par de claves SSH con frase de contraseña. De lo contrario, aún deberá ingresar la contraseña al sincronizar archivos entre sistemas.
- Cómo configurar la autenticación basada en claves SSH en Linux
3.4. Configurar trabajo cron (opcional)
Podemos sincronizar archivos automáticamente en un intervalo de tiempo específico mediante trabajos cron.
Por ejemplo, agregue la siguiente entrada en sucrontab
archivo para ejecutar la sincronizacióncada día(Se ejecutará a las 00:00):
0 0 * * * unison directory1/ ssh://[email protected]//home/ostechnix/directory1/
Para obtener más detalles sobre cómo configurar trabajos cron, consulte la siguiente guía:
- Una guía para principiantes sobre trabajos cron
Obteniendo ayuda
Cubrí sólo lo básico. Esto es suficiente para configurar una sincronización que funcione en su sistema Linux. Si desea conocer un uso más avanzado, consulte la sección de ayuda de Unison.
Para mostrar la página de documentación local, ejecute:
$ unison -doc topics
Verá la lista de temas disponibles en la documentación local.
Documentation topics: about About Unison people People lists Mailing Lists and Bug Reporting status Development Status copying Copying ack Acknowledgements install Installation tutorial Tutorial basics Basic Concepts failures Invariants running Running Unison ssh Installing Ssh news Changes in Version 2.48.4 Type "unison -doc <topic>" for detailed information about <topic> or "unison -doc all" for the whole manual
Para ver la información detallada sobre un tema, por ejemplo unísonotutorial, correr:
$ unison -doc tutorial
También puede mostrar el manual completo de Unison usando el siguiente comando:
$ unison -doc all
También adjunté los enlaces oficiales de Unison al final de esta guía. Lea la documentación y familiarícese con cómo funciona Unison. Una vez que haya aprendido lo suficiente, intente configurar la sincronización local y/o remota con Unison en producción.
Conclusión
Unison le permite mantener fácil y eficientemente dos o más sistemas completamente sincronizados entre sí sin importar lo que se cambie en cualquiera de los sistemas. Si desea mantener dos instancias de una colección de archivos y directorios en dos sistemas actualizadas e idénticas, ¡Unison es una buena opción!
Recursos:
Lectura relacionada:
- Sincronice archivos entre múltiples sistemas con Syncthing
- Cómo sincronizar directorios locales y remotos en Linux
- Cómo sincronizar archivos y directorios usando Zaloha.sh