有没有办法在Linux中继续中断破碎的scp(安全副本)命令过程?[关闭]


241

我正在使用scp命令将7.5 GB文件复制到远程服务器。在某个时间点文件传输中断,我必须重新开始。

传输的临时文件量是否完全丢失了?我可以以某种方式从先前尝试停止的地方重新开始传输吗?如果不是,是否有一些标准的Unix命令行文件传输命令可以执行此操作?


1
这个问题上找到更多的答案,包括。没有的解决方案rsync
tanius

Answers:


400

如果您需要恢复从本地到远程的scp传输,请尝试使用rsync:

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

简短版本,如@ aurelijus-rozenas指出

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

通常,rsync的args顺序为

rsync [options] SRC DEST

34
对于不同于默认端口22的端口,请使用rsync -P -e "ssh -p 222" SRC DEST
asofyan,2015年

4
如果rsync -e中断,我发现在恢复rsync -e需要之前将。<filename>。<6funnychars>重命名为目标上的<filename> 。
gaoithe

5
rsync仅在另一端可用时才有效。
dothebart

1
rsync是否真的会恢复在scp中开始的文件传输?是否实际需要两个rsync命令,一个rsync(不是scp)命令开始复制,然后断开连接,然后另一个rsync命令恢复复制?
杰弗里·安德森

4
最初如何获得部分下载并不重要。您可以从scp开始,然后以rsync结尾。
汤姆·麦克卢尔

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.