Cuando tanto el origen como el destino son remotos, rsync se queja:
The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1156) [Receiver=3.0.7]
¿Existe un obstáculo técnico insuperable para que rsync haga esto? ¿O es simplemente un caso de aún no implementado? Parece relativamente fácil crear un búfer local en la memoria que media la transferencia entre dos controles remotos, que contiene tanto hashes como datos.
EDITAR
Como la gente hace algunas sugerencias tangenciales, publiqué una pregunta por separado que detalla mi caso de uso particular. Estos son dos por separado, realmente, y creo que valdría la pena conocer estos detalles particulares para rsync
Respuestas:
¿por qué no intentas conectarte a la máquina remota e iniciar la transferencia desde allí? Si está utilizando ssh-keys, puede usar el pase de agente para administrar la autenticación por usted.
Este comando lo registrará en remoteHostA y ejecutará rsync desde allí.
fuente
No tiene problemas para hacer esto.
fuente
Puede solucionar este problema montando uno (o ambos) de los sistemas de archivos remotos con
sshfs
. Entonces, rsync lo tratará como si fuera local.Desafortunadamente, esto resultará en un gran uso de ancho de banda en la máquina cuyo sistema de archivos está montado
sshfs
, por lo que recomendaría hacerlo solo con la máquina que tiene mucho ancho de banda entre usted y la tercera máquina.Por supuesto, la solución ideal es que las máquinas se comuniquen directamente entre sí. No se me ocurre ninguna buena razón por la que no deberían hacerlo.
fuente