Ubuntu关于修改resolv.conf重启失效的问题

在通常情况下,我们在ubuntu系统中可以通过resolv.conf来设置DNS地址。但重启后,resolv.conf中的地址仍然会返回为原来的内容。

这是因为resolv.conf文件其实是一个Link文件,如图:

在Ubuntu中有一个 resolvconf 的服务,这个服务用来控制/etc/resolv.conf的内容。所以一旦我们重启了系统或者该服务,那么/etc/resolv.conf文件中的内容将被还原为原来的内容。所以直接修改/etc/resolv.conf并不能解决这个问题。

解决办法:

1.在网卡的配置文件中定义DNS地址:

$sudo vim /etc/network/interfaces

注释掉:iface eth0 inet dhcp

添加如下配置:

iface eth0 inet static

address 192.168.0.10

netmask 255.255.255.0

gateway 192.168.0.1

dns-nameserver 8.8.8.8 8.8.4.4

2.修改resolvconf服务的配置文件:

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

在其中添加或修改:

nameserver 8.8.8.8 8.8.4.4

3.删除并替换软连接(直接把软连接文件替换为同名的resolv.conf文件)

(注意:有时候有权限问题,所以最好进入/etc目录中再执行cp、rm、mv操作,当然如下命令中的路径前缀就不需要了)

$sudo cp /etc/resolv.conf  /etc/resolv.conf1

$sudo rm /etc/resolv.conf

$sudo mv /etc/resolv.conf1  /etc/resolv.conf

 

参考:https://blog.csdn.net/apache0554/article/details/46539247

你可能感兴趣的:(linux,Ubuntu,resolv.conf,修改,重启,失效)