最近需要传一些大文件(40G)到远程服务器
前言
跳连接指的是
跳连接(Jump Host),也称为跳板主机或代理主机,是在进行远程连接时使用的一种技术。当您需要通过一个中间服务器(跳板主机)来访问其他内部服务器时,跳连接就派上了用场。这种配置通常用于增加安全性或通过一个中转点访问处于内部网络的目标服务器。
指的比如是我中间的跳板主机成为地址B,目标主机是A,我需要从B跳到A
提示:以下是本篇文章正文内容,下面案例可供参考
一、本地主机是Windows
VScode和MobaXterm都是非常可取的远程连接软件,但是对于传输超过10G的大文件十分不友好(在CV工作中,图片或者是视频的数据集相对来说都比较大),我之前用VScode发现看不了上传文件的进度条(可能也是我没认真尝试),无论是VSCode或者是MobaXterm其实都存在上传速度慢且容易发生中断,好处就是你远程连接后可以采取拖拽的形式上传文件,这点倒是十分方便
好了,切入正题
我选择的是使用Xshell+Xftp进行跳连接
详情可以参考这篇文章如何实现跳板机(服务器跳转访问,xshell和xftp为例)_xftp 跳板机_qq_43797186的博客-CSDN博客
可以达到2M/s的速度,感觉还是比较友善的
二、本地主机是Ubuntu
相对来说ubuntu连接远程的linux不用下载很多工具,命令行搞定
方法1:scp
终端输入:
scp -o ProxyJump=B@xxx.xxx /home/xx/leftImg8bit_trainextra.zip A@xxx.xx:/file/cityscape/
在这里有几个部分要说明一下"scp -o ProxyJump= “这部分可以不变
B这部分就是跳板主机,中间主机的地址
"/home/xx/leftImg8bit_trainextra.zip” 这部分换成自己要上传的文件的本地绝对路径
A这部分就是你的目标主机地址:要上传的在服务器上的绝对路径
这样就可以成功,但是相对来说,速度太慢,在我电脑上达不到2M/s这样的需求
方法2:rsync
在大多数的linux系统上都安装好了rsync,不确定的可以再确认一下,终端输入:
rsync --version
相对scp后的命令改为:
rsync -avz --progress -e "ssh -J B的地址(跳板)" /home/xxx/leftImg8bit_trainvaltest.zip A的地址(目标):/file/cityscape/(目标地址)
相对来说,速度快了很多
达到了2M/s的速度