每次我尝试使用时sudo
都会得到这个:
sudo: unable to resolve host ubuntu-server
我的/etc/hosts
文件:
127.0.0.1 localhost
127.0.1.1 ubuntu-server
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
FF02::2 ip6-allrouters
/etc/hostname
有:
ubuntu-server
我认为还有一些其他设置导致了unable to resole host
错误,但我找不到这些。
答案1
这可能意味着您的 DNS 查找已损坏。
您的 /etc/hosts 文件看起来不错。您希望它看起来也像这样:
127.0.0.1 localhost
127.0.1.1 ubuntu-server
但存在几种合法的变体。
确保 /etc/hostname 中有一个匹配的主机名。
检查 /etc/resolv.conf 以查看您是否定义了有效的名称服务器。
看看您是否可以解析任何主机名。可以nslookup google.com
吗?如果不行,则您的 DNS 查找失败,可能是由于配置或网络或防火墙问题(可能超出了您对服务器的控制范围)。
根据我的经验,sudo
域查找超时后,最终会要求您输入密码,并授予您提升的权限。
尝试手动将正确的 DNS 名称服务器添加到 /etc/resolv.conf。
紧急情况下,您可以使用公共服务器。以下是使用 Google DNS 服务器的文件:
/etc# cat resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 2001:4860:4860::8888
nameserver 2001:4860:4860::8844
答案2
编辑/etc/hosts
,你有一个拼写错误127.0.1.1
,不是 loopback,将其更改为127.0.0.1
,保存并重新启动。