getaddrinfo EAI_AGAIN 错误的一个可能原因

Linux系统,刚装好没多久,运行Node.js程序倒是看起来没啥问题,只是浏览器上打不开对应地址,然后过一会程序报错退出:

Error: getaddrinfo EAI_AGAIN localhost.localdomain

查了一下是因为DNS问题,但我这只是在自己机器上跑着玩,肯定跟域名什么的没有关系。想了很久才明白是因为这个系统没有主机名,所以只要给系统加上主机名,就OK了。

系统安装的时候不设主机名的Linux发行版很少见,但是openSUSE看来现在是这样的了,明明以前也会随机生成个名字。


添加主机名的方法(懒人方法):

  1. 在 /etc/hostname 文件中定义主机名,如果系统没有设置,这个就是空文件,文件里写啥主机名就是啥
  2. 在 /etc/hosts 文件中,给 127.0.0.1 和 ::1 后面的别名都加上刚刚设置的主机名
  3. 重启(不重启就生效的方法请自行查询)

参考:

https://www.cyberciti.biz/faq/opensuse-linux-change-hostname-computer-name-command/

 

你可能感兴趣的:(Linux,node,javascript,node.js,javascript,linux,opensuse)