首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么我在使用Fabric python库时收到低级套接字错误?

为什么我在使用Fabric python库时收到低级套接字错误?
EN

Stack Overflow用户
提问于 2009-09-24 01:51:22
回答 4查看 13.4K关注 0票数 20

当我运行该命令时:

fab -H localhost host_type

我收到以下错误:

[localhost] Executing task 'host_type'
[localhost] run: uname -s

Fatal error: Low level socket error connecting to host localhost: Connection refused

Aborting.

有没有想过为什么呢?谢谢。

Fabfile.py

from fabric.api import run
def host_type():
    run('uname -s')

配置

  • Fabric 1.0a0 (从16:03:18)
  • Mac 1.7.4PyCrypto Python 1.3.3版安装)
    • Python 2.6.2+ (版本26-维护:74924,2009年9月18日,16:03:18)
    • Mac OS X 10.6.1
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-09-24 02:01:12

重要的部分不是消息中的“低级错误”部分--重要的部分是“连接被拒绝”部分。当您尝试连接到已关闭的端口时,将收到“连接被拒绝”的消息。

最有可能的情况是,当Fabric正在运行时,您的机器上没有运行ssh服务器。如果你这样做了

ssh localhost

您可能会收到类似以下内容的消息

ssh: connect to host localhost: Connection refused

因此,您必须先在计算机上设置SSH服务器,然后才能从那里继续Fabric。

票数 27
EN

Stack Overflow用户

发布于 2012-07-17 04:17:33

我遇到了同样的问题,但原因不同:虽然我可以通过SSH (默认端口22)轻松登录到服务器,但fabric尝试在关闭的端口9090上连接。

最后,我意识到我已经在旧的fabfile中为一些WSGI服务器设置定义了"env.port=9090“;虽然这从来不是问题,但我在几周前更新了我的Python安装,fabric现在使用env.port进行SSH连接。我刚刚重命名了这个配置,一切又恢复正常了。

票数 2
EN

Stack Overflow用户

发布于 2016-05-15 17:24:40

这也可能发生在OS X 10.11.4和Fabric 1.10.1中,当您使用Vagrant ssh到VM时,Vagrant会从localhost进行端口转发。在这种情况下,本地主机解析到IPv6 ::1地址(不是由于/etc/hosts文件),并给出此错误。

修复方法是通过在fix文件中使用127.0.0.1地址而不是主机名来强制使用IPv4。在/etc/hosts中使用此地址的主机名不起作用。

您可能还想尝试一下这些useful tips for debugging connection issues in Fabric

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

https://stackoverflow.com/questions/1469431

复制
相关文章

相似问题

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