需要帮助解决paramiko问题

时间:2011-12-08 07:34:03

标签: python ssh paramiko

我可以使用pexpect ssh到服务器,并且没有登录和运行命令的问题。但是,我想切换到使用paramiko来进行ssh连接,这样我就可以利用其他一些paramiko模块了。但是,当我使用paramiko时,我收到错误:

sock.connect((hostname, port))
  File "<string>", line 1, in connect
socket.error: [Errno 113] No route to host

我不明白为什么它没有说主持人的路线,因为我可以通过pexpect显示我或者只是简单地ssh到节点来到达节点。

对于可能存在的问题的任何帮助将不胜感激。我不知道如何对此进行故障排除。

我运行的paramiko启用了这样的调试,但我没有得到任何调试消息,脚本立即失败:

paramiko.common.logging.basicConfig(level=paramiko.common.DEBUG)

1 个答案:

答案 0 :(得分:1)

如果您可以发布您正在使用的代码的简化示例,将会很有帮助。

检查以确保名称解析正确发生:

socket.gethostbyname(hostname)

另外,我不确定你为什么直接使用socket?或者是你在

时得到的堆栈跟踪和错误消息的一部分

你应该能够用这样的东西完成你想要的东西:

from paramiko.client import SSHClient
client = SSHClient()
client.load_system_host_keys()
client.connect('ssh.example.com')
stdin, stdout, stderr = client.exec_command('ls -l')
print stdout

如果您提供了完整的错误消息,堆栈跟踪和您正在使用的代码,那将会更有帮助。

相关问题