Estaba transfiriendo varios miles de archivos cada ~ 1MB a través de scp y mi conexión se interrumpió después de los primeros 2k archivos más o menos. Quería saber si había una manera de reanudar la transferencia recursiva sin comenzar de nuevo. Algo como
$ scp -r [email protected]:/datafiles/ ./
... Happy Transfer ...
... BREAK! ...
$ rsync -P [email protected]:/datafiles/ ./
... Continue transf...
El problema es que parece que no puedo obtener la sintaxis correcta si es posible. ¿Alguien puede arrojar algo de luz si / cómo se puede hacer?
PD. Si especifica la barra diagonal después de "archivos de datos" en la línea rsync, ¿eso transfiere el directorio o su contenido? Vi comentarios contradictorios cuando busqué en Google.
ssh -i akey.pem
es necesario y no puedo hacer que la-i
parte funcione con estos comandos.--partial --inplace --no-whole-file
.-l
no es necesario. Está implícito en-a
La siguiente línea debería hacer el truco para eso:
rsync --partial --progress --rsh = ssh -r [email protected]: / datafiles / ./
Nunca he usado esto para directorios recursivos antes, pero cuando envié un mensaje de texto justo ahora parecía funcionar como se esperaba.
fuente
El comando rsync que enumeró funcionaría si solo agrega "-r". pero también es probable que desee "-a" y "-v".
Y sobre la barra inclinada final, [email protected]: / data / es equivalente a / data / *, en otras palabras, si agrega una barra inclinada, copiará todo el contenido. pero [email protected]: / data sería el directorio en sí [y, naturalmente, sus subcarpetas]
fuente
Combinar las respuestas de kibitzer y Tyler funcionó mejor para mí:
(rsyncing recursivamente y mostrando el progreso de cada archivo)
fuente