Je transférais plusieurs milliers de fichiers chacun ~ 1 Mo via scp et ma connexion était rompue après les premiers 2k fichiers. Je voulais savoir s'il y avait un moyen de reprendre le transfert récursif sans recommencer. Quelque chose comme
$ scp -r [email protected]:/datafiles/ ./
... Happy Transfer ...
... BREAK! ...
$ rsync -P [email protected]:/datafiles/ ./
... Continue transf...
Le problème est que je n'arrive pas à obtenir la syntaxe correcte si c'est possible. Quelqu'un peut-il nous expliquer si / comment cela peut être fait?
PS. Si vous spécifiez la barre oblique après "fichiers de données" dans la ligne rsync, cela transfère-t-il le répertoire ou son contenu? J'ai vu des commentaires contradictoires lorsque j'ai googlé.
ssh -i akey.pem
c'est nécessaire et je ne peux pas faire fonctionner la-i
pièce avec ces commandes.--partial --inplace --no-whole-file
.-l
n'est pas nécessaire. Il est sous-entendu par-a
La ligne suivante devrait faire l'affaire pour cela:
rsync --partial --progress --rsh = ssh -r [email protected]: / datafiles / ./
Je n'ai jamais utilisé cela pour des répertoires récursifs auparavant, mais quand je l'ai envoyé par SMS, il semblait fonctionner comme prévu.
la source
La commande rsync que vous avez répertoriée fonctionnerait si vous ajoutiez seulement "-r". mais vous voudriez aussi très probablement "-a" et "-v".
Et à propos de la barre oblique de fin, [email protected]: / data / est équivalent à / data / *, en d'autres termes, si vous ajoutez une barre oblique, elle copie tout le contenu. mais [email protected]: / data serait l'annuaire lui-même [et naturellement, ses sous-dossiers]
la source
La fusion des réponses de Kibitzer et Tyler a fonctionné le mieux pour moi:
(rsyncing récursif et montrant la progression de chaque fichier)
la source