2016-07-14 12 views
3

Ich verwende Net :: SFTP :: Foreign mit IO :: Pty.Umgang mit Net :: SFTP :: Ausländische ungültige Benutzer oder Passwort Fehler?

Mein Login Der Befehl lautet:

Net::SFTP::Foreign->new(host=> $server_address, 
         user => $user_id, 
         password => $password) 
    or die "Could not Connect To Server $server_address: $!"; 

Wenn ich ungültigen Eintrag am Übergang für Server/Benutzer/Passwort, es ist nicht die Fehlermeldung zu werfen. Es hängt einfach an der Kommandozeile und gibt nach über 30 Minuten keine Ausgabe.

Bitte helfen Sie mit den Fehlern umzugehen, wenn es ungültige Eingabeparameter gibt.

Wenn ich alle gültigen Werte überlasse, funktioniert es gut.

+1

Mit ungültigen meinst du ein falsches Passwort? Oder passiert das auch, wenn Sie eine '$ server_address' verwenden, die weder ein Hostname noch eine IP-Adresse ist? – simbabque

+0

ja. falsches Passwort/falscher Servername/falscher Benutzername. Wenn ich falsche Werte übergebe, bleibt der Job lange hängen und wird nicht beendet. – Edu

+2

Debugging sowohl im Modul als auch in 'ssh' aktivieren und hier die Ausgabe schreiben:' $ Net :: SFTP :: Foreign :: debug = -1; mein $ sftp = Net :: SFTP :: Foreign-> new (mehr => '-vvv', ...); ' – salva

Antwort

1

Schließlich, mit der folgenden Option, kann ich das Problem behandeln. Net :: SFTP :: Foreign :: debug = -1; $ sftp = Net :: SFTP :: Ausländisch-> neu (host => $ server_address, user => $ user_id, passwort => $ password, mehr => '-vvv', timeout => 30);

Dieser Befehl behandelt den falschen host_name, user_id oder das falsche Kennwort. Der Job wird fehlschlagen, nachdem er auf die angegebene Anzahl von Sekunden für Timeout gewartet hat, wenn er keine Verbindung herstellen kann.

Verwandte Themen