sudo不起作用,unable to resolve host 已解决

刚装上ubuntu 8.04的时候,使用sudo指令,发现总是有这样的提示:unable to resolve host init-ubuntu。当时还以为新的版本没有这条指令了(见笑了)。
后来发现不少的人碰到了这个问题,于是开始想办法解决。网上的办法就是修改/etc目录下的hosts文件,但是要修改这个文件也需要root权限,现在就是卡在这个环节上了。
1、尝试的办法一:登录界面进入安全模式,但是进入之后同样不能sudo,报错依旧。
2、进入recovery mode,从指令窗口调用修改,再次报错。
3、实际解决办法:
进入“系统(system)->“系统管理”(Administration)->“用户与组”(Users and Groups),然后解锁,这些步骤还是可以实现的。然后选中root组,点击右边的“属性”(Properties),这个时候会发现下面有“手动输入密码”(Set password by hand)的选项,安装之后我没有填过这个选项,现在设置上这个密码。确定就ok了。(忘记了要不要注销或者重启。) 注:不是必须的
然后,在终端中运行代码:

 

*************************My Q***************************

su root
输入root密码,现在就是在root下面操作了,可以直接:

gedit /etc/hosts
将hosts中的127.0.1.1 后面的名字改成自己想要的主机名,我的是init-ubuntu。
同时要保证/etc/hostname中的主机名与刚才修改的一致,不一致的话一定要改过来。
重启,ok。

*************************My Q***************************

 

导致问题原因:

用vmware workstation(版本6.5)装Ubuntu(版本8.04)时,/etc/hostname 和 /etc/hosts 中出现xxx-desktop(xxx为vm装Ubuntu的时候的Full name),为了名字更简洁些,把hostname中的-desktop去掉了,但没修改hosts中的名字,重启时出现这样的问题。That's all.

 

问题分析:
网络中有人提出是主机名中含有非法字符造成的,我发现我的系统出现这个问题不在于这一点。我安装的时候填了一个域名mshome,结果host文件中主机名就被设置成了init-ubuntu.mshome,而hostname中依旧是init-ubuntu,两个名字不一致,所以不能resolve(解析)。
在此也提出一个假设的办法,我没有试验过,但是如果我分析的对,相比以上办法要简单的多:打开“系统”->“系统管理”->“网络”,解锁,将“常规”选项卡中“域名”的内容删除,我的这一栏写的是mshome。然后在“主机”选项卡中找127.0.1.1,发现后面是localhost,点击“属性”修改主机名为想要用的名字。
重启,问题应该同样能得到解决。这个办法就不需要用代码来帮忙了。

 

转载地址:http://blog.sina.com.cn/s/blog_58e54a3801009dnn.html

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值