2

I am using Ubuntu. When I try to login to Heroku from command shell i get the follwing error:

/usr/local/lib/ruby/1.9.1/net/http.rb:644:in `initialize': getaddrinfo: Name or service not known (SocketError)

from /usr/local/lib/ruby/1.9.1/net/http.rb:644:in `open'
from /usr/local/lib/ruby/1.9.1/net/http.rb:644:in `block in connect'
from /usr/local/lib/ruby/1.9.1/timeout.rb:44:in `timeout'
from /usr/local/lib/ruby/1.9.1/timeout.rb:89:in `timeout'
from /usr/local/lib/ruby/1.9.1/net/http.rb:644:in `connect'
from /usr/local/lib/ruby/1.9.1/net/http.rb:637:in `do_start'
from /usr/local/lib/ruby/1.9.1/net/http.rb:626:in `start'
from /usr/local/lib/ruby/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/request.rb:172:in `transmit'
4

1 回答 1

2

“名称或服务未知”通常意味着您尝试连接的主机未解析到 IP 地址(即 DNS 查找失败)。

您可以尝试一些故障排除步骤:

  1. 确保您已连接到互联网。尝试使用ping -c10 8.8.8.8(因为您正在 ping IP 地址而不是主机名,它应该在没有 DNS 的情况下工作)。您会在输出的末尾获得一些统计数据,如果它说的是类似的内容,0% packet loss那么您就有了互联网连接。
  2. 查看 DNS 是否正常工作。尝试使用dig heroku.com. 您应该得到一些输出,其中包括ANSWER SECTION列出多个 IP 地址。如果您收到超时,则问题出在您的 DNS 服务器上。
  3. 尝试使用另一个 DNS 服务器dig @8.8.8.8 heroku.com。如果可行,您应该将您的 DNS 服务器(至少暂时)更改为 Google8.8.8.88.8.4.4.

也可以看看:

于 2012-10-15T20:02:03.310 回答