Que es rsync?
RSYNC es una utilidad habilitada para la red que es altamente flexible en términos de sincronización de archivos y directorios. Se incluye en la mayoría de las distribuciones de Unix y Linux como una utilidad popular para los scripts del sistema y su uso generalizado en estos sistemas operativos.
Ahora, veremos la sintaxis básica del comando rsync.
Sintaxis RSYNC:
$ RSYNC Opción Fuente Destino
Aquí "Opción" se refiere a opciones de RSYNC, "fuente" para el directorio de origen y "Destino" para el directorio de destino.
Para demostrarle el método de sincronizar un directorio en Linux, creamos dos directorios de prueba, "TestDir1" y "TestDir2", en nuestro sistema.
1. Directorio RSYNC localmente:
En primer lugar, enumere todo el contenido del directorio para conocer los archivos o carpetas. Hemos seleccionado "testdir1" para este propósito.
$ ls -al ./testdir1/
Directorio RSYNC con la opción "-r":
Para la sincronización directa, utilice la opción recursiva "-r" en el comando rsync. La sintaxis dada a continuación sincronizará el contenido de la fuente a su directorio de destino. El "/" apunta hacia el contenido del directorio de origen. Sin este corte, el comando RSYNC colocará el directorio de origen dentro del directorio de destino.
Escriba este comando para comenzar a sincronizar un directorio a otro.
$ rsync -r testdir1/ testdir2
$ ls -al ./testdir2/
Enumere el contenido "TestDir2" para ver los cambios realizados por RSYNC.
Directorio RSYNC con la opción "-a":
También puede utilizar varias opciones o banderas que RSYNC admite. La bandera "-a" es una de ellas. Este indicador ayuda al comando RSYNC a sincronizar un directorio de manera recursiva y mantener los archivos del dispositivo, los tiempos de modificación, los enlaces simbólicos, el propietario, el grupo y los permisos de archivos.
$ rsync -a testdir1/ testdir2
$ ls -al ./testdir2/
Directorio RSYNC con la opción "-V":
Para mostrar el proceso RSYNC en la opción Terminal "-V" se utiliza con el comando RSYNC.
$ RSYNC -ANV testDir1/ testdir2
Para verificar la diferencia que viene mediante el uso de un "/" al final del directorio de origen, escriba este comando:
$ rsync -anv testdir1 testdir2
La salida establece claramente que ahora se transfiere el directorio de origen.
Directorio RSYNC con la opción "-P":
El "-p" muestra el progreso del directorio de sincronización al mostrar la barra de progreso en la terminal.
$ RSYNC -AZP testDir1 testDir2
También puede utilizar el mismo comando para reanudar las transferencias interrumpidas.
$ RSYNC -AZP testDir1 testDir2
Para verificar si utilizando el mismo comando rsync solo sincroniza la modificación que hicimos en el directorio, cree algunos archivos de prueba en su directorio de origen.
$ touch testdir1/file 1 ... 10
Después de eso, ejecute el mismo comando rsync y vea el comportamiento inteligente del comando rsync.
$ RSYNC -AZP testDir1 testDir2
2. Directorio RSYNC del sistema local al sistema remoto:
La operación de sincronizar un directorio local a cualquier sistema remoto se conoce como "Push", ya que empuja el directorio de su sistema local a la remota.
Siga la sintaxis de la operación de empuje para sincronizar un directorio:
$ rsync -a ~/origen nombre de usuario@remoto_host: destino
En nuestro caso, vamos a sincronizar el directorio "testdir1" al host remoto "10.0.2.15".
$ rsync -a ~/testdir1 [email protected]: testdir2
3. Directorio RSYNC del sistema remoto al sistema local:
Como todos sabemos, lo contrario de empuje es "Pull."En el contexto de la sincronización, la operación de extracción sincroniza un directorio desde el sistema remoto a su sistema local.
$ sudo rsync -v name de usuario@remoto_host: destino de origen
$ sudo rsync -v [email protected]:/home/linuxhint/testdir1/testdir2
Conclusión:
RSYNC es una herramienta que puede mejorar la confiabilidad de la sincronización de directorio local y el proceso de transferencia de archivos a través de sistemas remotos. Puedes usar el Comando RSYNC Para crear copias de seguridad complejas y un control suave sobre qué y cómo se sincronizará un directorio. En esta publicación, le hemos demostrado las diversas formas de usar RSYNC, que incluyen: directorio RSYNC dentro de un sistema local, directorio RSYNC de local a un sistema remoto, y también de remoto a la local.