阻止resolv.conf自动重置

注意:本文最后更新于 2719 天前,有关的内容可能已经发生变化,请参考使用。

在Ubuntu10.04下默认使用NetworkManager,每次更换网络环境:如更换无线接入热点,更换所在局域网设置,更换拨号等等。NetworkManager都会有独立的一套设置保存着。

这也就意味着每次重新连接网络resolv.conf文件就将被重写:无论之前的resolv.conf中是什么内容,都将被先清空然后在加上“# Generated by NetworkManager”字样和相应环境的nameserver设置。这本来没有多大问题,但是当我启用了dnsmasq来加速DNS解析,或者是我一直想用一个固定的DNS服务器,又或者是我的网络在NetworkManager中没有设置DNS服务器的时候就会遇到一些麻烦。

要禁止NetworkManager重置resolv.conf文件可以这样:

修改好相应的resolv.conf之后用

    sudo chattr +i /etc/resolv.conf

命令将resolv.conf文件变成只读,这样NetworkManager就不能修改resolv.conf文件了。

(另外可以将sudo chattr +i /etc/resolv.conf加到/etc/rc.local里面的exit 0之前的任何位置)

对于想使用dnsmasq来加速DNS解析的情况,还有另外一种相对柔和一点的方法把127.0.0.1加入到DNS服务器列表中.设置优先的DNS服务器

    sudo cp /etc/resolv.conf /etc/resolv.conf.auto
    sudo gedit /etc/dhcp3/dhclient.conf 

在最前面加上prepend domain-name-servers 127.0.0.1,8.8.8.8。


「倘若有所帮助,不妨酌情赞赏!」

Holmesian

感谢您的支持!

使用微信扫描二维码完成支付


相关文章

发表新评论
暂无评论
  1. sanitary ware fittin

    学习了,多谢博主分享

    sanitary ware fittin 回复
  2. 宁波网站设计

    分享了,谢谢

    宁波网站设计 回复
  3. brass forging

    博主这样的Happy了,看来是个很容易满足的人啊容易满足不好么?

    brass forging 回复
  4. 陈维国博客

    学习一下了啊

    陈维国博客 回复