RSYNC es un conocido programa de software libre que permite sincronizar archivos y carpetas entre diferentes ubicaciones de manera eficiente. No solo copia datos, sino que también comprueba las diferencias entre el origen y el destino para transferir solo los cambios que se han hecho.
Para utilizar RSYNC con el fin de copiar una carpeta y su contenido, podemos usar la siguiente sintaxis en la línea de comandos:
```
rsync -a /ruta/carpeta_origen/ /ruta/carpeta_destino/
```
En este comando, ‘-a’ es un parámetro que indica a RSYNC que queremos copiar la carpeta de manera recursiva, preservando los permisos, los tiempos, los vínculos simbólicos, etc. La barra inclinada al final de la ruta de la carpeta de origen es muy importante: si la omitimos, RSYNC copiará el contenido de la carpeta de origen directamente a la carpeta de destino, en lugar de copiar la carpeta en sí.
Si queremos que RSYNC copie la carpeta y su contenido, sin la barra inclinada al final de la carpeta de origen, el comando sería:
```
rsync -a /ruta/carpeta_origen /ruta/carpeta_destino/
```
En este caso, si la carpeta de destino ya existe, RSYNC creará una copia de la carpeta de origen dentro de la carpeta de destino. Si la carpeta de destino no existe, RSYNC la creará.
Por otro lado, si lo que queremos es copiar la carpeta de origen a la carpeta de destino y eliminar los archivos del destino que ya no existen en la carpeta de origen, podemos usar el parámetro ‘—delete’, quedando el comando así:
```
rsync -a —delete /ruta/carpeta_origen /ruta/carpeta_destino/
```
Estos ejemplos deberían cubrir la mayoría de casos típicos al usar RSYNC para copiar carpetas. Sin embargo, RSYNC es una herramienta muy potente con muchos más parámetros y posibilidades. Por ejemplo, es posible usar RSYNC sobre SSH para copiar archivos y carpetas de manera segura entre diferentes máquinas a través de Internet.
Para aprender más sobre cómo se puede utilizar RSYNC, es útil consultar el manual del programa, que ofrece una descripción detallada de todos los parámetros disponibles y proporciona más ejemplos de uso. El manual se puede consultar en línea o se puede acceder a él en un sistema Linux escribiendo ‘man rsync’ en la línea de comandos.
Fuentes:
1. “Rsync (Remote Sync): 10 Practical Examples of Rsync Command in Linux”. Tecmint, 2020. https://www.tecmint.com/rsync-local-remote-file-synchronization-commands/
2. “rsync – a fast, versatile, remote (and local) file-copying tool”. man7.org, 2021. https://man7.org/linux/man-pages/man1/rsync.1.html