rsync
es una herramienta poderosa que permite a los usuarios sincronizar archivos y directorios entre diferentes ubicaciones. Ya sea que busques mantener una copia de seguridad actualizada o simplemente desees mover datos entre diferentes máquinas, rsync
es la elección preferida de muchos profesionales y aficionados por su velocidad y eficiencia. En este artículo, descubrirás las maravillas de rsync
, con especial enfoque en su uso en sistemas Ubuntu y Debian.
Desentrañando rsync
: Conceptos y Funcionamiento
Para emplear rsync
al máximo, primero debemos entender qué es y cómo opera.
¿Qué hace tan especial a rsync
?
A diferencia de otros comandos de copiado, rsync
sincroniza datos comparando y transfiriendo solo las partes de archivos que han cambiado, en lugar de copiar el archivo completo. Esto lo hace increíblemente rápido y eficiente, especialmente cuando se manejan grandes conjuntos de datos.
Estructura básica de un comando rsync
El esqueleto básico de un comando rsync
es el siguiente:
$ rsync [opciones] origen destino
Tanto el origen como el destino pueden ser ubicaciones locales o remota.
Empezando con rsync
: Casos de Uso Comunes
A continuación, presentamos ejemplos prácticos de uso de rsync
que te ayudarán a entender su potencial.
Sincronización de directorios locales
Supongamos que deseas sincronizar un directorio llamado mis_fotos
con otro directorio llamado backup_fotos
:
$ rsync -av mis_fotos/ backup_fotos/
Con las opciones -a
(modo archivo) y -v
(modo detallado), rsync
sincronizará los dos directorios.
Sincronización con un servidor remoto
Para sincronizar un directorio local con uno en un servidor remoto:
$ rsync -av mis_fotos/ usuario@servidor:/ruta/al/backup/
Sincronizar desde un servidor remoto a local
El proceso es similar al anterior, simplemente invierte el origen y el destino:
$ rsync -av usuario@servidor:/ruta/al/backup/ mis_fotos/
Dominando rsync
: Consejos y Opciones Avanzadas
rsync
ofrece muchas opciones que permiten personalizar y optimizar la sincronización.
Uso del modo de compresión
La opción -z
permite comprimir los datos durante la transferencia, lo que acelera la sincronización en redes más lentas:
$ rsync -avz mis_fotos/ usuario@servidor:/ruta/al/backup/
Exclusión de archivos
Si deseas excluir ciertos archivos o directorios de la sincronización, puedes utilizar la opción --exclude
:
$ rsync -av --exclude='*.mp3' mis_fotos/ backup_fotos/
Este comando sincronizará mis_fotos
con backup_fotos
, pero excluirá todos los archivos .mp3.
Sincronización eliminando archivos
Si quieres que rsync
elimine archivos en el destino que ya no existen en el origen, usa la opción --delete
:
$ rsync -av --delete mis_fotos/ backup_fotos/