0

尝试使用镜像时,lftp我收到以下输出(-d调试模式):

<--- 227 Entering Passive Mode {some numbers}
---- Connecting data socket to (more numbers and port)
---- Data connection established
---> REST 0
<--- 350 Restart position accepted (0).
---> RETR {some filename}

当我打开此文件时,文件已损坏 - 文件内容向下移动了几行,然后在其上写入文件的正常副本。例如,如果文件有五行(为简洁起见,没有显示换行符):line1 line2 line3 line4 line5,那么损坏的文件将显示为:line1 line2 line3 line3 line4 line5。

考虑到我在使用这种 ftp/网络组合时遇到的其他问题,我知道这不是问题lftp。但是,我想知道禁用restart position更改是否会以某种方式修复那些损坏的文件(至少它适用于其他文件)。通过阅读手册,我可以看到这两个选项:

   hftp:use-range (boolean)
          when true, lftp will use Range header for transfer restart.

   http:use-range (boolean)
          when true, lftp will use Range header for transfer restart.

我不知道这是否与我想要实现的目标相关(强制lftp始终完整下载数据,而不重新启动位置),或者我想要的原则上是否可以实现。我会通过实际运行这些选项来尝试这些选项,但是当文件损坏时我看不到任何可预测的模式,并且重新下载相同的文件总是会给出正确的版本。所以任何帮助表示赞赏!:)

4

1 回答 1

0

不确定这是否是解决方案,但根据日志我认为我的问题是由get -c命令引起的,所以我--continue从镜像作业中删除了。

于 2016-04-22T01:41:09.657 回答