哪里可以找到 的默认值lftp
?例如net:max-retries
和net:timeout
。
我之所以问这个问题,是因为我**** Data socket error (Connection timed out) - reconnecting
在 lftp 调试日志中收到一些消息。如果我不手动退出该进程,它似乎会一直重试。这对 cron 作业来说很糟糕。
问题:
我如何明确设置一个特殊脚本的超时和重试,如下所示:
lftp -c "
open $HOST
user $USER $PASS
lcd $SOURCEFOLDER
mirror --delete --verbose $FSOURCE $FTARGET
exit
"
我如何才能捕获上面批处理文件中的任何同步错误,以便我可以在最大超时时发送电子邮件通知?
答案1
我仍然不知道如何找出默认值。但可以按如下方式更改它们:
lftp -c "
set net:timeout 5;
set net:max-retries 3;
set net:reconnect-interval-multiplier 1;
set net:reconnect-interval-base 5;
open $HOST
user $USER $PASS
lcd $SOURCEFOLDER
mirror --delete --verbose $FSOURCE $FTARGET
exit
"
答案2
在哪里可以找到 lftp 的默认设置?
从 lftp 提示符内部:
lftp :~> set -a
这将列出系统上 lftp 的所有默认设置。
lftp 有上下文相关的帮助。因此您可以输入:
lftp :~> help set
返回:
Usage: set [OPT] [<var> [<val>]]
Set variable to given value. If the value is omitted, unset the variable.
Variable name has format ``name/closure'', where closure can specify
exact application of the setting. See lftp(1) for details.
If set is called with no variable then only altered settings are listed.
It can be changed by options:
-a list all settings, including default values
-d list only default values, not necessary current ones
答案3
/etc/lftp.conf
这是我们系统上 lftp 的默认设置文件。
您可以按照上面membersound的答案中的设置简单地添加行。