Cómo utilizar Rsync para una transferencia eficiente de archivos entre directorios en Linux

Como Utilizar Rsync Para Una Transferencia Eficiente De Archivos Entre Directorios En Linux



Rsync es una utilidad de línea de comandos famosa por sus funciones de sincronización de datos en Linux. Puede usarlo para sincronizar los archivos en el mismo sistema y en diferentes. Además, ofrece funciones como compresión de archivos, cifrado, sincronización selectiva y más que la hacen superior a otras herramientas. Puede comparar los directorios de origen y de destino para transferir solo los archivos recién agregados y actualizados desde el directorio de origen.

Todas estas características ayudan a reducir el tiempo de espera y mejorar la productividad. Sin embargo, muchos usuarios de Linux no conocen las funciones de rsync y no están familiarizados con su eficiente transferencia de archivos. Este blog explicará brevemente los métodos para usar rsync para una transferencia eficiente de archivos entre directorios en Linux.







Cómo utilizar Rsync para una transferencia eficiente de archivos entre directorios en Linux

Hay algunas formas de usar rsync en Linux, por lo que dividiremos esta sección con más detalle para explicar su uso en diferentes escenarios.



Instalación de sincronización



Aunque la utilidad rsync viene preinstalada en la mayoría de los sistemas Linux, puede instalarla ejecutando el siguiente comando:





sudo apto instalar sincronización -y

 

Ahora, verifique la versión instalada de rsync.

sincronización --versión

 

Una vez que haya terminado, ejecute el siguiente comando para comenzar a sincronizar el origen y el destino:



sincronización -O fuente objetivo

 

    • La fuente es el directorio desde el que desea sincronizar los archivos.
    • Target es su directorio de destino donde desea almacenar esos archivos.

Transferencia de archivos locales

Puede usar rsync para copiar y pegar los archivos dentro del mismo sistema usando el siguiente comando:

sudo sincronización -de ruta_fuente / ruta_objetivo /

 

    • La opción '-a' significa archivo que conserva los atributos del archivo durante una transferencia.
    • El '-v' es para el modo detallado en el que puede ver qué archivos se están transfiriendo.

Por ejemplo, usémoslo para copiar los archivos del directorio 'Descargas' al directorio 'Documento':

sudo sincronización -de ~ / Descargas ~ / Documentos

 

Transferencia remota de archivos

Puede utilizar rsync principalmente para transferir archivos de forma remota entre dos máquinas que están conectadas a través de una red. Para ello, debe especificar el host remoto utilizando la siguiente sintaxis:

sincronización -de -Es ssh usuario @ servidor remoto: / camino / a / fuente / / camino / a / objetivo /

 
Con la opción '-e ssh', puede decirle al sistema que use específicamente el shell seguro o SSH para esta transferencia de archivos.

Eliminar archivos del directorio de destino (que no están presentes en el origen)

Suponga que desea que ambos directorios sean idénticos y contengan archivos similares. En este caso, debe eliminar los archivos adicionales (si los hay) presentes en el directorio de destino. Afortunadamente, con rsync, puedes hacer esto usando la opción “– –delete”. Para saber cómo, siga el siguiente comando:

sincronización -de --borrar / camino / a / fuente / / camino / a / objetivo /

 

Excluir archivos durante la transferencia

Al transferir directorios completos, es posible que deba excluir algunos archivos o subdirectorios. Por lo tanto, puedes utilizar la opción “– –excluir” de la siguiente manera:

sincronización -de --excluir 'Nombre del archivo' / camino / a / fuente / / camino / a / objetivo /

 

Ejecución en seco

Cuando utilice rsync para directorios grandes, primero debe realizar un ensayo. De esta manera, el sistema demuestra qué haría este comando sin transferir los archivos. Sin embargo, esto puede ayudarle a evitar la transferencia de archivos no deseados. Para realizar un ensayo, utilice la opción “– –dry-run” en el siguiente comando:

sincronización -de --ejecución en seco / camino / a / fuente / / camino / a / objetivo /

 
Por ejemplo, realice un ensayo antes de sincronizar los archivos del directorio 'Descargas' al directorio 'Documentos':

sincronización -de --ejecución en seco ~ / Descargas ~ / Documentos

 

Mostrar el indicador de progreso

Dado que algunos usuarios prefieren tener un indicador de progreso para ver el progreso de su transferencia, puedes habilitarlo usando el siguiente comando:

sincronización -de --progreso fuente / objetivo /

 
Tomando el ejemplo anterior con el indicador de progreso, obtendrás el resultado como se muestra en la siguiente imagen:

Conclusión

Rsync es una poderosa herramienta para transferir archivos entre directorios en Linux. Este blog explica sus diversos casos de uso, como la sincronización de datos local y remota. Además, presenta múltiples subcomandos para facilitar algunas funcionalidades como excluir archivos durante la transferencia y eliminar archivos del destino. A pesar de todas estas funciones, los usuarios aún pueden cometer errores. Por lo tanto, siempre debes realizar un ensayo para transferencias de archivos grandes.