Тайм-аут LFTP не работает - PullRequest
11 голосов
/ 13 июня 2011

Я использую следующую команду для установки тайм-аута команды lftp, чтобы, если сервер недоступен или не принимает какое-либо новое соединение, команда завершается через 10 секунд.

lftp -e 'set ftp:passive-mode true; set net:timeout 10; cd /OUT; mput $filename; bye' -u mylftpuser,mypassword myhost.com

Однако время ожидания не работает. Когда я запускаю указанную выше команду в командной строке, она повторяет попытку подключения через 30 секунд, 45 секунд ... 60 секунд ... и никогда не заканчивается.

Я что-то здесь не так делаю?

Спасибо.

Ответы [ 3 ]

10 голосов
/ 20 ноября 2012

У меня была та же проблема с тайм-аутом, не работающим, когда я использовал:

lftp -e "set net:timeout 5" -u user,pwd server

Я удалил часть -e "set..." и использую только lftp -u user,pwd server, а команды вставляют ее в файл ~ / .lftp / rc :

cat ~/.lftp/rc
set net:timeout 5
set net:max-retries 2
set net:reconnect-interval-base 5

У меня сейчас отлично работает.

8 голосов
/ 01 июля 2011

Вместо net:timeout 10, попробуйте это:

set net:reconnect-interval-base 5; set net:max-retries 2;
7 голосов
/ 18 января 2014

Это из-за очень высокого значения по умолчанию net:max-retries 1000, которое равно:

максимальное количество последовательных попыток операции без успеха.0 означает неограниченно.1 означает отсутствие повторов.

Измените его (в вашем файле конфигурации ~ / .lftp ) на что-то вроде 5, и все готово.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...