首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Paramiko,Python时不支持Errno -8 Servname

使用Paramiko,Python时不支持Errno -8 Servname
EN

Stack Overflow用户
提问于 2013-04-25 09:26:11
回答 3查看 2.5K关注 0票数 3

我试图通过Python脚本通过SSH连接到服务器。目前我正在试用paramiko。我在客户端和服务器之间设置了一个公钥,所以我不需要密码。我目前正在使用以下代码:

代码语言:javascript
复制
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect('192.168.56.102', 'oracle', None, '~/.ssh/id_rsa')
stdin, stdout, stderr = ssh.exec_command('ls')

但是当运行这个时,我得到了一个错误

ai_socktype不支持Errno -8 Servname

有什么帮助吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-09-15 22:18:26

基本上,如果跳过任何参数,但不以跳过的参数来显式命名参数,这就会抱怨ai_socktype。在这种情况下,问题在于参数'username‘是第二个参数,而不是'username='oracle’。这也是为什么添加端口号修正了它(然后没有跳过任何参数)。

票数 0
EN

Stack Overflow用户

发布于 2014-08-19 15:07:20

您只需指定参数。不需要添加端口号(如果端口号与默认端口号相同)。

连接的定义来看,您的示例如下所示:

代码语言:javascript
复制
ssh.connect('192.168.56.102', username='oracle', password=None, key_filename='~/.ssh/id_rsa')
票数 1
EN

Stack Overflow用户

发布于 2013-04-25 10:56:16

这是通过添加端口号作为参数来解决的!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16211087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档