解决Ubuntu 14.04 重启后DNS配置丢失(resolv.conf丢失)的问题

问题

从网上得知 /etc/resolv.conf中的DNS配置是从/etc/resolvconf/resolv.conf.d/head中加载而来,所以每回改resolv.conf都会失效,在此文件里面已经有说明

打开/etc/resolv.conf内容如下:

jie@jie:~$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

内容是一段警告:说这个文件是resolvconf程序动态创建的,不要直接手动编辑,修改将被覆盖。
所以我们不能直接修改这个文件

解决方法1:

sudo vim /etc/resolvconf/resolv.conf.d/base

添加以下内容(随便一个就行):

nameserver 114.114.114.114
nameserver 114.114.115.115
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 223.5.5.5
nameserver 223.6.6.6

如果有多个DNS就一行一个
修改好保存,然后执行:

sudo resolvconf -u

此时再看/etc/resolv.conf文件,最下面就多了以下内容:

jie@jie:$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 114.114.114.114
nameserver 114.114.115.115
nameserver 8.8.8.8

现在此DNS已经生效了,无需重启,当然重启也不会丢失

解决方法2:

修改/etc/resolvconf/resolv.conf.d/head

jie@jie:$ cat  /etc/resolvconf/resolv.conf.d/head
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

这个文件里提示不要手动修改。按照系统提示的说法,不建议改此文件,当然改也是可以:

sudo vim /etc/resolvconf/resolv.conf.d/head

添加以下内容(随便一个就行):

nameserver 114.114.114.114
nameserver 114.114.115.115
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 223.5.5.5
nameserver 223.6.6.6

如果有多个DNS就一行一个
修改好保存,然后执行:

sudo resolvconf -u
发布了112 篇原创文章 · 获赞 320 · 访问量 22万+

猜你喜欢

转载自blog.csdn.net/jiejiemcu/article/details/98939344