getaddrinfo:未找到命令

getaddrinfo:未找到命令

可能重复:
如何修复 telnet 服务器的“getaddrinfo:未找到 localhost 名称或服务”?

我在 AWS EC2 实例上安装了新的 Ubuntu 12.04,到目前为止一切运行正常。我按照这个很棒的教程中的说明进行操作:http://www.exratione.com/2012/05/a-mailserver-on-ubuntu-1204-postfix-dovecot-mysql/

现在我正处于“安装 monit”的阶段,当我重新启动服务时,我收到此错误消息:

monit: Cannot translate '(none)' to FQDN name -- Name or service not known

我开始谷歌搜索,有人在那里写道,monit 在启动过程中使用 getaddrinfo 来确定主机名。好吧,所以我想自己试试 getaddrinfo 传递了什么,然后我得到了:

getaddrinfo: command not found

我猜我的系统缺少了一些东西。有人能帮忙吗?

答案1

getaddrinfo是标准 C 库中的库函数,而不是命令行工具。因此尝试执行它并不是解决问题的正确方法。您如果需要,可以从 python shell 调用 getaddrinfo :

dennis@lightning:~$ python
>>> import socket
>>> socket.getaddrinfo('localhost', None)
[(2, 1, 6, '', ('127.0.0.1', 0)), (2, 2, 17, '', ('127.0.0.1', 0)), (2, 3, 0, '', ('127.0.0.1', 0))]

但我怀疑这是否能帮助你解决问题。相反,请点击 Michael 评论中的链接。

答案2

如何修复 telnet 服务器的“getaddrinfo:未找到 localhost 名称或服务”?

我认为这应该对你有帮助。我遇到了同样的问题,这正是导致问题的原因(还有一些脚本会自动设置一些 DNS 内容)。

相关内容