Linux环境小问题——Get HostName Error

之前使用mysql的时候,在配置文件中,已经指明了ip访问,,但无论怎么写,得到的都是这个ip主机的别名,很无奈。直到把这台机器重装后,才彻底解决这个问题。当时没有多想,碰巧这台虚拟机的宿主机硬件故障需要重新配置,顺道解决了这个问题。

如今,配置Kestrel的Worker都是时候,遇到了这样的问题:

[2012-08-06 11:35:56,165][ERROR][net.rubyeye.xmemcached.monitor.XMemcachedMbeanServer:88] Get HostName Error java.net.UnknownHostException: 49_114: 49_114 at java.net.InetAddress.getLocalHost(InetAddress.java:1354) at net.rubyeye.xmemcached.monitor.XMemcachedMbeanServer.initialize(XMemcachedMbeanServer.java:84) at net.rubyeye.xmemcached.monitor.XMemcachedMbeanServer.<init>(XMemcachedMbeanServer.java:73) at net.rubyeye.xmemcached.monitor.XMemcachedMbeanServer.<clinit>(XMemcachedMbeanServer.java:66)

这里的49_114是这台机器的hostname,而我要访问的是另一个ip。并发我的代码访问了localhost,可能xmemcached默认初始化时,进行了本机信息获取,才导致这一问题。

看看hostname是谁:

引用

$ hostname 49_114 $ hostname -i hostname: 未知的主机

太悲剧了 ,难怪出现Get HostName Error!

再看看hosts

引用

cat /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6

这就是悲剧的根源,在hosts中,没有指明自身ip绑定。 这个问题其实很容易解决,将hostname与localhost绑定即可。

引用# Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 49_114 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6

就这么简单!

引用

$ hostname 49_114 $ hostname -i 127.0.0.1

这时候,就不会再出来Get HostName Error异常了!

用最少的悔恨面对过去

Linux环境小问题——Get HostName Error

相关文章:

你感兴趣的文章:

标签云: