W: 无法下载 http://...解析“...”时,出现了某些故障(-5 - 没有与主机名关联的地址)
使用ubuntu系统,之前使用一直正常,今晚配置了一下物理机的IP后,安装软件提示下载失败,于是打算更新软件包列表,
$sudo apt-get update,出现:
W: 无法下载 http://mirrors.163.com/ubuntu/dists/precise-security/universe/binary-i386/Packages 解析“mirrors.163.com:http”时,出现了某些故障(-5 - 没有与主机名关联的地址)
第一反应是是不是虚拟机没联网,已连接,桥接模式,$ifconfig查看参数正常,打开ubuntu软件中心,发现能刷新;
第二怀疑更新源有问题,于是Windows上网找更新源,先备份
$sudo cp /et/apt/sources.list /etc/apt/sources.list_bak,修改
$sudo gedit /etc/apt/sources.list,
ctrl+a,ctrl+v,ctrl+s,ctrl+q;问题还是没解决;
只好找度娘,看了几个帖子,最全的的页面是(http://blog.csdn.net/gavin_dinggengjia/article/details/7559765) ,提到的问题和我的很像,于是招样修复DNS,
原先设置的DNS是自动获取,可能ISP分配的动态DNS出问题,所以尝试使用固定DNS。
1、设置IP
这里我设成静态IP,因为局域网其他机器需要访问这台服务器。
$sudo vim /etc/network/interfaces
auto lo
iface lo inet loopback
加入:
auto eth1
iface eth1 inet static
address 192.168.199.162
netmask 255.255.255.0
gateway 192.168.199.1
2、配置DNS
目前比较好用的DNS是Google的8.8.8.8和OpenDNS的208.67.222.222。
$sudo vim /etc/resolv.conf
加入
#Google
nameserver 8.8.8.8
nameserver 8.8.4.4
或
#OpenDNS
nameserver 208.67.222.222
nameserver 208.67.220.220
3、重启网络
$sudo /etc/init.d/networking restart,
提示没有找到eth1,于是把“auto eth1
和iface eth1 inet static “改为”auto eth0
iface eth0 inet static “,再重启网络,提示正确;
满怀欢喜执行$sudo apt-get update,问题还是没解决;重启虚拟机和物理机,问题依然没解决。
只好再劳烦度娘,看到另一篇文章(http://www.myexception.cn/operating-system/513974.html),操作一遍
$ echo 'nameserver 192.168.199.1' >> /etc/resolv.conf
bash: /etc/resolv.conf: 权限不够
于是sudo echo 'nameserver 192.168.199.1' >> /etc/resolv.conf
bash: /etc/resolv.conf: 权限不够,
没办法,只好切换到root,$sudo -i
# echo 'nameserver 192.168.199.1' >> /etc/resolv.conf
# echo 'nameserver 8.8.8.8' >> /etc/resolv.conf
# /etc/init.d/networking restart
# exit
$ sudo apt-get update
居然可以更新了!!!