【发布时间】:2016-07-19 22:10:21
【问题描述】:
我正在使用带有 IO::Pty 的 Net::SFTP::Foreign。
我的登录命令是:
Net::SFTP::Foreign->new(host=> $server_address,
user => $user_id,
password => $password)
or die "Could not Connect To Server $server_address: $!";
当我传递服务器/用户/密码的无效条目时,它不会抛出错误消息。它只是挂在命令行上,30 多分钟后没有给出任何输出。
如果有任何无效的输入参数,请帮助如何处理错误。
如果我传递了所有有效值,它工作正常。
【问题讨论】:
-
无效是指密码错误吗?或者当您使用既不是主机名也不是 IP 地址的
$server_address时也会发生这种情况? -
在模块和
ssh中启用调试并在此处发布输出:$Net::SFTP::Foreign::debug=-1; my $sftp = Net::SFTP::Foreign->new(more => '-vvv', ...); -
即使在上述更新之后也没有运气。我在下面试过。 Net::SFTP::Foreign::debug=-1; $sftp = Net::SFTP::Foreign->new(host=> $server_address, user => $user_id, password => $password, more=>'-vvv');但是如果我传递了错误的主机名,这项工作仍然会挂起并且不会给出任何输出。请帮忙! or die "Could not Connect To Server $server_address: $!";
-
在问题中包含调试输出!!!
-
我使用的命令:Net::SFTP::Foreign::debug=-1; $sftp = Net::SFTP::Foreign->new(more=>'-vvv', host=> $server_address, user => $user_id, password => $password); cmd 行输出 -> OpenSSH_5.3p1,OpenSSL 1.0.1e-fips 2013 年 2 月 11 日调试 1:读取配置数据 /etc/ssh/ssh_config 调试 1:应用 * 调试 2 的选项:ssh_connect:needpriv 0 ssh:无法解析主机名 ftp_address:名称或服务未知。使用此代码,作业正在移交并且不返回任何状态。在登录命令中添加 'timeout=>30' 后,当我传递不正确的主机名时,作业失败。