在带有 ssh-tunnel 的集群上使用 wget

在带有 ssh-tunnel 的集群上使用 wget

通常我可以使用

> scp [email protected] ssh [email protected]:/home/user/my_files/* .

对于大型数据集来说,这非常慢。

有人告诉我,我使用的机器有一个非常快的链接,可以使用 wget 访问。我如何使用 wget 执行相同的文件传输?

答案1

netcat如果这两台机器之间有快速、安全且稳定的网络连接,则可以使用和的组合tar,如下所示。

在目标机器上,运行:

nc -l 10000 | tar -C /destination/directory -xzf -

在源机器上,运行:

tar -cz /source/directory | nc dst-machine-ip-address 10000

请注意,由于不使用加密,因此可以嗅探流量,并且如果由于任何原因连接断开,您将不得不重新开始。

就我个人而言,我会坚持下去rsync

答案2

的表现SCP可能是由两个因素造成的:

  • 加密的成本对于较慢的处理器来说可能太高了,
  • 请求单个文件所需的往返次数。

对于大量的小文件,则是第二种。我的第一个想法是建议使用安全FTP因为它在远程主机上使用不同的程序。但经过测试,它的性能类似。

有效的解决方案是使用一个程序,该程序安装在客户端和服务器上,并且只发送一个数据流(而不是数千个远程控制频道):

相关内容