问题描述:我们在工作中,可能会遇到这样的情况,我们的服务器在国外。我们使用xshell去远程连接,然后想要文件上传下载,一般使用配套的Xftp工具。
对于国外的服务器,使用Xftp的时候,真的是,速度超级慢,毫不夸张的说,几十k每秒的速度,对于几十兆的文件还好说,对于上G的文件,差不多得一天。
网上尝试找了各种方案,就不太好。
今天一个偶然的想法,尝试一下,问题解决了。
# # 解决问题的思路
可以想:我们的需求就是 从国外的服务器A上,把几个G的文件下载到我们的内网使用的机器B上。
可以看我的示意图:
# # 问题解决方法
我就是在我内网的服务C上,使用scp命令,去远程国外的服务器A的,然后再用Xftp,从内网的服务器C上拉下来想要的文件。同理上传也是相同的道理,先把文件上传到服务器C上,然后使用scp命令,来传到对应的国外服务器A上。
使用Xftp去直连国外服务器A是超级慢的
使用Xftp去直连内网服务器C,上传下载都是很快的。
使用scp明命令,在服务器C上去远程复制国外服务器A上的文件,是超级快的。我的差不多在5M/s以上的速度。
# # 为什么呢?到底是什么原理
我去了解了一下,简单的介绍技术,scp协议,和ssh协议是不一样的。
详细学习,可以看一篇文章:https://www.jianshu.com/p/3adcce4e2661
# # 如果不会使用 scp命令,或者不熟悉
简单介绍使用
scp 另外一台机器的用户名@具体的ip:文件的绝对路径 要复制到当前机器的哪里(绝对路径)
栗子: scp root@192.168.10.10:/root/angus/temp/test.txt /root/bigfile
再啰嗦一下:就是我远程了 192.168.10.10 这台机器,然后它的用户名是 root,我拷贝了 test.txt 文件 ,到我当前机器的 /root/bigfile 文件夹下
想要学习更多关于scp的命令:https://www.jianshu.com/p/7bc29fb6f3b5