Rsync es un comando importante en Linux y se usa para sincronizar o copiar los archivos y directorios dentro del servidor local y remoto. Es una herramienta de copia de archivos rápida y extraordinariamente versátil. Una de las características importantes de este comando es "Algoritmo de transferencia Delta (DTA)" . Lo que significa es que solo copiará los cambios del origen al destino, en lugar de copiar todo el archivo o los directorios. Al hacer esto, también reduce la cantidad de datos enviados a través de la red. En la rutina, las personas usan este comando para las copias de seguridad, restauración y duplicación diarias.
En este artículo, discutiremos el uso de RSYNC comandos de varias maneras.
- Copiar/Sincronizar archivo localmente
Supongamos que queremos copiar un archivo "abc.txt" de una ubicación a la carpeta etc.#rsync -zvh abc.txt /etc
- Copiar/sincronizar directorio localmente
Supongamos que queremos copiar o sincronizar un directorio "testdir" con la carpeta "etc"#rsync -zavh testdir /etc
- Copiar archivos y directorios localmente de forma recursiva
Supongamos que tenemos varios archivos y directorios dentro del directorio de inicio del usuario A, use el siguiente comando para copiar archivos y directorios de forma recursiva, use la opción -a o -r para copiar archivos y directorios de forma recursiva.#rsync -zrvh file2.txt testdir11 /etc
Puede verificar esos archivos y directorios usando el "comando ls". - Copiar o sincronizar archivos y directorios del sistema local al remoto Supongamos que queremos copiar el archivo "/etc/abc.txt" del equipo local al equipo remoto
#rsync -zarvh /etc/abc.txt [email protected]***.***.72
- Copiar o sincronizar archivos y directorios desde la máquina remota al sistema local
Supongamos que queremos copiar archivos y directorios de la máquina remota a nuestro sistema local, en el siguiente ejemplo estoy copiando el archivo remoto "newfile.txt" en mi máquina local en la carpeta /etc#rsync -zarvh [email protected]***.***.72 /etc
- Mostrar el progreso de sincronización en la salida del comando rsync
Si desea ver el progreso de sincronización o copia en el comando rsync, utilice "–progress",#rsync -avh --progress [email protected]_address:/opt/rpms_db /tmp
- Eliminar archivos en el destino si no está presente en el origen
Si ya ha sincronizado archivos desde el origen al destino y desde un origen ha eliminado los archivos, entonces puede forzar el comando rsync para eliminar los archivos en el destino usando la opción –delete, el ejemplo se muestra a continuación#rsync -avz --delete /opt/rpms_db [email protected]_address:/tmp/rpms_db
- Poner un límite en el tamaño de la transferencia de archivos
Si no desea transferir o copiar archivos grandes con rsync, utilice la opción '–max-size={specify-size-here}', en caso de que no queramos transferir los archivos que tienen más de 1024 K, puede hacerlo según el siguiente comando Nota:use el símbolo M para mb y G para GB.#rsync -avz --max-size='500K' /opt/rpms_db [email protected]_address:/tmp