Puedes enviar y sincronizar archivos por SSH usando rsync, una herramienta más potente que scp que transmite datos de forma incremental, comprimida y cifrada. Con el comando adecuado, rsync copia desde un host remoto a tu equipo, y en repeticiones solo transfiere archivos nuevos o modificados.
Tabla de Contenido

Si buscas una opción directa cuando solo tienes acceso por SSH (OpenSSH) y necesitas más que la herramienta integrada, rsync ofrece eficiencia y control, con parámetros para borrar en origen o excluir rutas específicas.
Rsync: sincronizar archivos y directorios
Rsync permite sincronizar archivos y directorios entre dos máquinas de una red o entre ubicaciones de una misma máquina.
Además de trabajar sobre SSH, transmite datos de manera eficiente: incrementales, comprimidos y cifrados para acelerar y proteger las transferencias.
“Rsync […] permite sincronizar archivos y directorios entre dos máquinas de una red ó entre dos ubicaciones de una misma máquina, transmitiendo eficientemente datos incrementales comprimidos y cifrados.”
Disponible en UNIX-like y Windows
Rsync está disponible para sistemas UNIX-Like y también en Windows mediante cygwin, lo que facilita su uso en entornos mixtos.
Cuando la única vía de acceso es SSH, rsync se integra con OpenSSH para realizar la transferencia de extremo a extremo.
Ejemplo: copiar /root desde 192.168.1.70
Supongamos que quieres copiar los archivos de /root en la máquina 192.168.1.70 hacia tu equipo en /home/cortex por SSH. El comando utilizado en el artículo base es:
Comando: rsync -axSRzv [email protected]:/root /home/cortex/
Luego podrás verificar los archivos en /home/cortex/root. Si repites la transferencia, rsync por defecto solo copiará los archivos nuevos y/o modificados.
| Concepto | Aplicación |
|---|---|
| SSH (OpenSSH) | Úsalo cuando solo tienes acceso remoto por SSH y no quieres montar servidores adicionales. |
| Rsync en Windows (vía Cygwin) | Permite emplear rsync en entornos Windows con Cygwin. |
| Incrementales, comprimidos y cifrados | En repeticiones rsync transfiere solo cambios, ahorrando tiempo y ancho de banda. |
| –delete-during | Opcional para borrar del origen a medida que se van transfiriendo los archivos. |
| –exclude=dir/ | Excluye un archivo o directorio concreto de la sincronización (por ejemplo, tmp/). |
Metodología paso a paso
- Verificar rsync en ambos equipos: Debe estar instalado en origen y destino para realizar la transferencia.
- Ejecutar la sincronización base: Usa rsync -axSRzv usuario@host:/ruta/remota /ruta/local/ sobre SSH.
- Validar resultados: Revisa la carpeta destino (por ejemplo, /home/cortex/root) para confirmar la copia.
- Aplicar limpieza opcional: Si deseas borrar en origen durante la transferencia, añade –delete-during.
- Excluir rutas específicas: Para omitir directorios (como tmp/), añade –exclude=tmp/.
Preguntas frecuentes
¿Cómo enviar archivos por SSH con rsync?
Emplea rsync sobre SSH con la sintaxis mostrada en el ejemplo: especifica usuario, host y ruta remota seguidos de la ruta local. En ejecuciones repetidas, rsync transfiere por defecto solo los archivos nuevos o modificados.
¿Para qué sirve –delete-during en rsync?
Este parámetro permite que los archivos del equipo origen se vayan borrando conforme se transfieren, manteniendo los conjuntos sincronizados durante la operación.
¿Cómo excluir un archivo o carpeta de la copia?
Usa la opción –exclude=dir/. Por ejemplo, para omitir tmp/, añade –exclude=tmp/ al comando.
¿Necesito rsync instalado en ambos equipos?
Sí. Para transferir de un equipo a otro, rsync debe estar instalado en ambas máquinas. Normalmente se encuentra en los repositorios del sistema.
¿Dónde consultar documentación oficial?
Puedes revisar la man page de rsync, el sitio de rsync y OpenSSH. También hay material introductorio como el Manual SSH: El dios de la administración remota.
Conclusión
Puntos clave: rsync sobre SSH es una alternativa más potente que scp para enviar archivos por SSH; transfiere datos de forma incremental, comprimida y cifrada; y permite eliminar en origen o excluir rutas cuando se necesita. Revisa la documentación enlazada para profundizar y adaptar el comando a tu entorno.