阻止resolv.conf自动重置

提示:本文更新于 5170 天前,技术内容可能已发生变化,仅供参考。

在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

感谢您的支持!

使用微信扫描二维码赞赏


相关文章

发表新评论
已有 4 条评论
  1. sanitary ware fittin

    学习了,多谢博主分享

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

    分享了,谢谢

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

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

    brass forging 回复
  4. 陈维国博客

    学习一下了啊

    陈维国博客 回复