Linux scp 断点续传

Posted 幸福丶如此

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux scp 断点续传相关的知识,希望对你有一定的参考价值。

Linux服务器上的scp 是通过ssh协议传输数据,如果是想传输一个很大的数据,如一个tar包,400G左右,通过scp拷贝时,有可能遇到服务器断电或者网络不稳定中断等悲剧问题,那么类似scp拷贝的另一个命令 rsync就可以实现意外中断后,下次继续传,命令如下:

# rsync -P --rsh=ssh pic.tar.gz 192.168.205.304:/home/199_home.tar

说明:
-P: 是包含了 "–partial –progress", 部分传送和显示进度
-rsh=ssh 表示使用ssh协议传送数据

如果不想每次都使用 rsync -P rsh=ssh 之类的,可以写成 alias scpr="rsync -P --rsh=ssh"
那么下次就可以直接使用 scpr pic.tar.gz 192.168.205.304:/home/199_home.tar 来拷贝数据了。

在传输过程中,目标文件会以.199_home.tar.xxxx文件也隐藏,可以用la -a来显示出来。如果scpr中断了,那么该文件会变成用户指定的目标文件"199_home.tar",下次传的时候又会改成.199_home.tar.xxxx文件。

执行rsync过程中,把这个任务job放入后台执行,那么在执行了

rsync -P --rsh=ssh pic.tar.gz 192.168.205.34:/home/199_home.tar

再输出密码后,可以用 ctrl+z 来中断,再使用bg命令让它在后台执行。如下图:

以上是关于Linux scp 断点续传的主要内容,如果未能解决你的问题,请参考以下文章

rsync 实现断点续传

Linux小技巧之断点续传文件rsync

使用rsync -arLP进行断点续传

linux下不同服务器间数据传输(wget,scp)

大文件上传下载实现思路,分片断点续传代码实现,以及webUpload组件

Linux下实现断点续传的原理介绍