Necesito transferir archivos de un servidor CentOS a otro. Transferirá archivos de 5 MB aproximadamente cada 10 minutos. No necesita cifrado.
¿Qué es fácil para una transferencia rápida de archivos?
¿Existe algo más sencillo que ftp?
¡Gracias!
Respuesta1
sincronización
Usaría rsync antes de usar ftp o tftp.
Más opciones y (en mi experiencia) transferencias más confiables.
Respuesta2
tar sobre ssh está bien, pero tar sobre TCP a través de netcat tiene la sobrecarga más baja posible. Si esto es algo único, inténtalo:
En el receptor:
nc -l -p 8989 | tar x
Sobre el remitente:
tar cf - /source-path | nc (receiving host ip address) 8989
Si esto es algo que vas a hacer con regularidad, probablemente usaría rsync.
Respuesta3
Dos personas mencionaron tar en lugar de ssh, pero no dijeron cómo hacerlo. Para que conste, el procedimiento básico es ejecutar:
tar cf - files... | ssh remotehost 'cd /destination && tar xvf -'
O, si desea iniciar transferencias desde el extremo receptor:
ssh remotehost 'cd /source && tar cf - files' | tar xvf -
La ventaja de hacerlo de esta manera sobre la solución netcat de Evan es que todo se puede iniciar desde una computadora; no es necesario coordinar dos invocaciones de netcat. Si necesita que esto se ejecute automáticamente, puede configurar una clave ssh que le permita realizar conexiones sin una frase de contraseña y usar esa clave para estas conexiones.
ssh tiene una opción -C para comprimir su flujo de datos, o puedes usar la capacidad de compresión incorporada de GNU tar:
tar zcf - files... | ssh remotehost 'cd /destination && tar xzvf -'
Rsync es otra opción, pero su punto fuerte es la actualización de archivos que ya existen en el extremo receptor. Descubrí que es más lento que scp o tar/ssh cuando lo uso para transferir archivos que aún no existen en el otro extremo.
Respuesta4
Si tiene que pasar por scp/ssh, mis experimentos muestran que el cifrado más rápido habilitado de forma predeterminada en estos días es RC4. Usted especifica el cifrado a través de '-c arcocuatro' en tu comando ssh/scp:
para copia inicial:
scp -c arcfour -r foo/ desthost:/destdir
para actualizaciones:
rsync -e 'ssh -c arcfour' -r foo/ desthost:/destdir