通过互联网将大文件从 Linux VPS 传输到 Windows 计算机

通过互联网将大文件从 Linux VPS 传输到 Windows 计算机

我经常需要将几 GB 的文件从 Linux VPS 传输到我家里的 Windows 机器。我正在尝试寻找一种适合我需求的传输方法。FTP/SFTP 可以工作,但与其他方法相比速度很慢,SCP 速度足够快,但不支持恢复,这对于这种大小的文件来说很重要,而 rsync 没有好的 Windows 客户端,而它所拥有的客户端是作为备份解决方案设置的,对于这种用途来说并不实用。有人对我可以使用什么有什么建议吗?目前我正在使用 SFTP,但我无法忍受它的速度,对我来说它似乎只有 SCP 的一半。

答案1

从手册页(我的 OpenBSD 4.9 机器上的 rsync)中:

There  are  two  different  ways  for rsync to contact a remote system:
using a remote-shell program as the transport (such as ssh or  rsh)  or
contacting  an  rsync daemon directly via TCP. 

重点是,我相信您可以使用 rsync 使用上面提到的第一个设置(远程 shell 程序作为传输)进行连接,并通过执行以下操作免费获得断开的连接恢复:

$ rsync -r -h -P -e "ssh -p 1234" user@host:/my/huge/file   anotherUser@anotherHost:/destination/

[请注意开关:-r 表示递归,-h 表示人性化,-P 表示 --partial(保留部分传输的文件),-e 表示指定要使用的远程 shell。如果您想要更高级的功能,也可以使用 --partial-dir = DIR。]

在这种情况下,您不必在 Windows 机器上运行 rsync 服务器——只需运行 ssh 服务器。Windows 平台上有许多 ssh 服务器可供选择(我建议油灰因为它具有 Win 用户熟悉的 GUI 设置)。

我还会使用 md5 来散列您的文件,并比较传输的文件的 md5,以确保您的文件已正确传输,并且只需不断启动一个脚本,该脚本就会从 Linux 端不断进行 rsyncing,直到您的正确传输的文件出现在 win 框中。

答案2

同步? 如果需要的话,Windows 的 SSH 也是免费的。

相关内容