Subir muchos archivos grandes a un servidor remoto

1

Estoy en el proceso de crear una copia de seguridad externa y necesito hacer una carga inicial de datos. Actualmente, eso es aproximadamente 400 Gb, más o menos 10 Gb más o menos ... El sistema de copia de seguridad está produciendo archivos que son de aproximadamente 4 Gb cada uno, y también tiene otros archivos relacionados más pequeños. Entonces, necesito transferir todos los conciertos de 400 a un servidor remoto, pero ¿cómo? ¿Cuál es el mejor método?

Tengo acceso remoto completo al servidor, por lo que puedo instalar cualquier cosa que necesite instalar. Hay Windows, Linux y una VM Solaris ejecutándose en la caja, por lo que cualquiera de ellos se puede usar allí, y tengo Windows y Linux en casa. Tengo 2 conexiones de Internet en casa, 10Mb / s cargando en cada una, por lo que algo que podría dividir la cantidad de conexiones sería útil (algo así como GetRight, pero a la inversa ... ¿PutRight?).

[Actualización] He probado la siguiente opción de usar RSync, pero solo se está haciendo una conexión entre mi estación de trabajo y el servidor. Al cargar archivos grandes en Amazon, existe la opción de separarlos localmente y destrabarlos en el servidor. múltiples archivos también se envían a través de múltiples conexiones. por lo tanto, un archivo de 4 Gb podría dividirse en 800 ish en fragmentos de 5 Mb y enviarse 4 u 8 a la vez, utilizando la mayor cantidad de ancho de banda de carga posible. Entonces, ¿cómo haría esto automáticamente? Podría hackear algo para hacerlo y usar SFTP para enviar los archivos, pero ¿hay alguna opción automática?

TiernanO
fuente

Respuestas:

3

rsync funcionará mejor, lo más probable.

rsync -avzP / usuario de origen @ host: / destino

La sintaxis anterior se puede utilizar para copiar los archivos a través de ssh y le permitirá reanudar la transferencia donde la dejó en caso de desconexión. Los -vy -Pson opcionales, pero muy recomendables en su caso.

-v le dice a rsync que imprima el archivo actual en la pantalla.

-zle dice a rsync que comprima los datos. Esto puede aumentar considerablemente la velocidad de transferencia a través de conexiones WAN.

-Ple dice a rsync que haga dos cosas: Primero, proporcione un porcentaje de progreso en la pantalla, igual que --progress. En segundo lugar, dejará archivos parcialmente transferidos en el servidor, por lo que si hay una desconexión, deja ese archivo parcial en el servidor para que pueda reanudarlo. Esto es lo mismo que--partial

Como está destinado a ser una copia de seguridad externa, hay muchas opciones que puede utilizar en rsync para que sea muy robusto. También puede convertirlo fácilmente en una copia de seguridad incremental si lo desea.

Durante una segunda transferencia, si alguno de los datos ha cambiado, rsync simplemente copiará los cambios más recientes y dejará el resto solo.

UtahJarhead
fuente
Gracias por la info. Voy a usar esto para una sola ejecución, por lo que no se necesitan copias de seguridad incrementales ... El software de copia de seguridad me permite hacer una copia de seguridad una vez en una carpeta, tomar el contenido de la carpeta y llevarlo a otro lugar (generalmente hecho en una memoria USB o HDD) y luego continuar las copias de seguridad allí ... Gracias de nuevo. lo investigará!
TiernanO
Algunos argumentos adicionales que le interesarán (no son necesarios, pero pueden facilitarle las cosas): --delete --inplace --link-dest (bastante avanzado)
UtahJarhead
1
Dado que es único, use la sintaxis exactamente como está en la respuesta y será dorado, ¡suponiendo que ambos extremos tengan ssh disponible para ellos!
UtahJarhead
sí, ambos servidores están controlados por mí y SSH está disponible de forma remota.
TiernanO
¡Continúe, señor! ¡Buena suerte!
UtahJarhead