如何将 35GB 压缩数据从本地传输到远程服务器?

如何将 35GB 压缩数据从本地传输到远程服务器?

请告诉我将 35GB 压缩数据(使用 7zip)从我的笔记本电脑传输到远程服务器的最快方法。请同时发布命令。我使用过 SCP,但它非常慢,rsync 更好,但它的速度大约为 1MB/分钟,可能需要很长时间。有没有更好的方法?

答案1

ftp 和 http 是最快的,对于较少数量的大文件,ftp 更快,而对于大量小文件,http 更快(考虑到 http 流量的性质,这并不奇怪)。

https://stackoverflow.com/questions/9707900/what-is-the-fastest-way-to-transfer-files-over-a-network-ftp-http-rsync-etc

附加基准 -https://www.disk91.com/2014/technology/networks/compare-performance-of-different-file-transfer-protocol-over-latency/

注意:您的互联网提供商可能会限制上传速度,具体取决于您的提供商。如果您的提供商施加速度或数据上限,这可能无关紧要。

您也可以使用其他方法,请参阅http://moo.nac.uci.edu/~hjm/HOWTO_move_data.html

答案2

35GiB 以 1MB/分钟(17kB/s)的速度传输大约需要 25 天。由于需要很长时间,我将重点介绍一种可让您轻松恢复的方法。据我所知,这排除了 scp,我会研究以下候选方案:

设置用于提供单个文件的 Web 服务器相当简单;标准 Ubuntu 安装无需任何配置即可完成此操作,只要计算机可以通过 Internet 访问即可。只需将文件放入/var/www/html/(或链接到那里)即可。

用于wget -c http://example.com/file.tar在中断时恢复下载。此方法非常可靠。由于这是一次性操作,因此无需担心 SSL 证书 - 如果您担心安全性和完整性,请加密并签署数据。

Rsync 通过 SSH 传输,因此很安全。它支持无缝延续。应该支持恢复,并且可以无忧地传输文件。rsync -P localfile [email protected]:remotefile

但 25 天是很长的时间。您可能可以将驱动器复制到 USB 驱动器,然后更快地通过邮件发送。64GiB USB 驱动器的价格约为 20 美元。如果您通过 DHL 发货,它将在 3-4 天内到达几乎任何地方。

简而言之 - 对于这种数据量和您所看到的连接速度,最快的选择可能是将其塞入外部驱动器,然后邮寄。

或者去某个连接状况良好的地方 - 35GiB 在 100Mb/s 的连接条件下将需要不到一小时。

要加密和签名文件,您可以使用 gpg。设置密钥对,加密文件并签名。在远程端验证签名,然后解密。这可确保通过邮件或 http 等不受信任的渠道传输时的安全性和完整性。如果您使用 rsync,ssh 将为您处理此事。

答案3

正如 Panther 所说,未加密的选项(例如FTP或 )HTTP是最快的。但是,如果您不希望在互联网上公开任何内容,我建议您使用加密方法。您可以尝试创建一个简单的 PHP 登录页面(使用 if 语句),安装和配置nginxapacheHTTPS,并设置只有您可以访问的下载链接。HTTPS 应该很快,因为它使用压缩,您可以使用诸如 之类的程序axel通过多个连接安装该文件。

假设您的互联网连接是瓶颈,而不是 CPU,最简单的答案是使用SFTP标志-C来启用压缩,尽管由于您已经压缩了它,因此可以进一步压缩的量相当小。最简单的做法是使用更有效的方法再次压缩文件。

相关内容