如何使用netcat或socat或curl恢复文件传输?

如何使用netcat或socat或curl恢复文件传输?

我必须通过互联网将一个由单个文件组成的 400Gb 数据库从我完全控制的服务器传输到海洋对面边界的另一台计算机(但使用较慢的连接)。传输应该需要整整一周的时间,为了减少所有协议开销(即使使用 ftp 也会有 10 分钟的开销),我使用原始 tcp 连接。

我已经传输了 10% 的文件,但我了解到几个小时后将会发生计划中断。

我如何询问 netcat 或 socat 或卷曲FILE:database.raw在被中断的偏移量处提供服务?或者

答案1

如果您的命令如评论中所述是:

socat -u FILE:somedatabase.raw TCP-LISTEN:4443,keepalive,tos=36

您可以在发送端执行 aseek并从那里开始服务:

socat -u gopen:somedatabase.raw,seek=1024 TCP-LISTEN:4443,keepalive,tos=36

在接收方,您还需要寻求:

socat tcp:example.com:4443 gopen:somedatabase.raw,seek=1024

查看 的联机帮助页socat,还有您可能感兴趣的其他选项。

相关内容