web-dev-qa-db-fra.com

Existe-t-il un moyen de continuer le processus de commande cassé scp (copie sécurisée) sous Linux?

Je copie un fichier de 7,5 Go sur un serveur distant à l'aide de la commande scp. À un moment donné, le transfert de fichiers s'interrompt et je dois tout recommencer.

La quantité temporaire de fichier en cours de transfert est-elle complètement perdue? Puis-je en quelque sorte redémarrer le transfert à partir de l'endroit où il s'était arrêté lors d'une tentative précédente? Si ce n'est pas le cas, existe-t-il une commande standard de transfert de fichier en ligne de commande Unix pour le faire?

223
Matko

Si vous avez besoin de reprendre un transfert scp de local à distant , essayez avec rsync:

rsync --partial --progress --rsh=ssh local_file user@Host:remote_file

Version courte, comme signalé par @ aurelijus-rozenas :

rsync -P -e ssh local_file user@Host:remote_file

En général, l'ordre des arguments pour rsync est

rsync [options] SRC DEST
376
Tom McClure

C'est tout ce dont vous avez besoin.

 rsync -e ssh file Host:/directory/.
13
DigitalRoss