12 Stimmen

lftp-Zeitüberschreitung funktioniert nicht

Ich verwende den folgenden Befehl, um die Zeitüberschreitung des lftp-Befehls so einzustellen, dass der Befehl nach 10 Sekunden beendet wird, wenn der Server nicht verfügbar ist oder keine neue Verbindung annimmt.

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

Die Zeitüberschreitung scheint jedoch nicht zu funktionieren. Wenn ich den obigen Befehl in der Eingabeaufforderung ausführe, wird der Verbindungsaufbau nach 30 Sekunden, 45 Sekunden, 60 Sekunden ... wiederholt und endet nie.

Mache ich hier etwas falsch?

Danke.

12voto

Michal Nemec Punkte 177

Ich hatte das gleiche Problem mit der Zeitüberschreitung, die nicht funktionierte, als ich sie verwendete:

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

Ich habe die -e "set..." Teil und nur verwenden lftp -u user,pwd server und die Befehle fügen sie in ~/.lftp/rc Datei:

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

Das funktioniert bei mir jetzt einwandfrei.

10voto

Bob Punkte 81

Anstelle von net:timeout 10 versuchen Sie dies:

set net:reconnect-interval-base 5; set net:max-retries 2;

8voto

not2qubit Punkte 11725

Das liegt an der sehr hohen Vorgabe von net:max-retries 1000 und das ist:

die maximale Anzahl von aufeinanderfolgenden Versuchen einer Operation ohne Erfolg. 0 bedeutet unbegrenzt. 1 bedeutet keine Wiederholungsversuche.

Ändern Sie es (in Ihrem ~/.lftp Config-Datei) auf etwa 5 und Sie sind startklar.

1voto

Shiva Janssens Punkte 31

In der Dokumentation finden Sie weitere Informationen über den Ort der Einstellungen und die verfügbaren Optionen. Nachfolgend sehen Sie die Dateispeicherorte der Einstellungen.

Beim Starten führt lftp Folgendes aus ~/.lftprc und ~/.lftp/rc (oder ~/.config/lftp/rc wenn ~/.lftp gibt es nicht). Dort können Sie Aliasnamen und Befehle ablegen. Manche Leute ziehen es vor, das vollständige Protokoll-Debug zu sehen, verwenden Sie debug um die Fehlersuche einzuschalten.

Außerdem gibt es eine systemweite Startdatei in /etc/lftp.conf . Sie kann in einem anderen Verzeichnis liegen, siehe Abschnitt DATEIEN.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X