Solución 1:
Yo lo haría así:
tar -cf - /manyfiles | ssh dest.server 'tar -xf - -C /manyfiles'
Dependiendo de los archivos que esté transfiriendo, puede tener sentido habilitar la compresión en el tar
comandos:
tar -czf - /manyfiles | ssh dest.server 'tar -xzf - -C /manyfiles'
También puede tener sentido que elija un cifrado más amigable con la CPU para el ssh
comando (como arcfour):tar -cf - /manyfiles | ssh -c arcfour dest.server 'tar -xf - -C /manyfiles'
O combine ambos, pero realmente depende de cuál sea su cuello de botella.
Obviamente rsync
será mucho más rápido si realiza sincronizaciones incrementales.
Solución 2:
Usa rsync
en lugar de scp
. Puedes usar rsync
sobre ssh
tan fácilmente como scp
y es compatible con la "canalización de transferencias de archivos para minimizar los costos de latencia".
Un consejo:si los datos se pueden comprimir, habilite la compresión. Si no es así, desactívelo.