При попытке отразить с помощью 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}
Когда открываю этот файл, то файл поврежден - содержимое файла сдвинуто вниз на несколько строк и потом поверх него пишется обычная копия файла. Например, если файл состоит из пяти строк (разрывы строк не показаны для компактности): строка1 строка2 строка3 строка4 строка5, то поврежденный файл будет выглядеть так: строка1 строка2 строка3 строка3 строка4 строка5.
Учитывая другие проблемы, с которыми я сталкиваюсь при использовании этой комбинации ftp/network, я понимаю, что это не вина 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
всегда загружать данные полностью, без перезапуска позиции), или то, что я хочу, достижимо в принципе. Я бы попробовал эти варианты, фактически запустив их, но я не вижу какой-либо предсказуемой закономерности, когда файлы повреждаются, а повторная загрузка одних и тех же файлов всегда дает правильную версию. Так что любая помощь приветствуется! :)