ubuntu 自从12.04后,会自动刷写 /etc/resolv.conf 文件,导致写入的dns信息会在重启的时候丢失。

============================

转自:http://i2cq.com/2012/05/1343

安装了ubuntu server 12.04 LTS之后,发现用过去的方法配置ip后,会出现dns失效的问题,每次启动后resolv.conf文件就被清空,查看wiki之后发现这个问题的原因。

我配置固定ip喜欢这样做

auto eht0
iface eth0 inet static
address 192.168.1.5
gateway 192.168.1.1
netmask 255.255.255.0

之后/etc/init.d/networking restart后就可以正常访问网络,如果需要配置dns,我选择直接修改resolv.conf文件

$ vi /etc/resolv.conf
nameserver 192.168.1.1
nameserver 8.8.8.8

在ubuntu 12.04之前是没问题的,更新到ubuntu 12.04之后,却出现文章开头的问题,修改resolv.conf文件,发现一条警告

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGE WILL BE OVERWRITTEN

意思是这个文件已经改由resolvconf程序来动态生成,手动编辑会被覆盖。这个resolvconf我还是第一次遇到,它是怎样的一个程序呢?wiki查询说ubuntu 12.04 lts启用了这个程序,在ubuntu manpage查到了对这个程序的功能说明,http://manpages.ubuntu.com/manpages/lucid/man8/resolvconf.8.html 或者直接man resolvconf。
resolvconf是用来解决大量自动修改resolv.conf配置的程序所设立的,官方页面是http://packages.qa.debian.org/r/resolvconf.html
他解决了一些如手动修改/etc/network/interfaces,pppd拨号,dhcp自动分配,dnsmasq缓存解析等等程序对resolv.conf文件的影响,所有改变自动被resolvconf程序吸收修改而不会相互影响冲突。
resolvconf -a eth0 添加一个设备后,resolvconf –enable-updates开启自动更新功能,我再次修改/etc/network/interfaces

auto eht0
iface eth0 inet static
address 192.168.1.5
gateway 192.168.1.1
netmask 255.255.255.0
dns-nameservers 192.168.1.1 8.8.8.8

之后,此时的resolv.conf文件就多了两行

nameserver 192.168.1.1
nameserver 8.8.8.8

如果不开启自动更新,使用resolvconf -u也能更新一次resolv.conf文件。

resolvconf是在ubuntu 12.04之后引入的一项新功能,这个守护进程能很好的解决手动编辑resolv.conf时遇到的冲突问题,很有实际意义。

ubuntu 永久设置dns信息的更多相关文章

  1. 在Ubuntu中设置DNS域名服务器端

    在Ubuntu中设置DNS域名服务器主要有四种方法: 一.设置全局静态DNS $ sudo vi /etc/resolvconf/resolv.conf.d/base(这个文件默认是空的),插入: n ...

  2. 在Ubuntu中设置DNS域名服务器

    在Ubuntu中设置DNS域名服务器主要有四种方法: 一.设置全局静态DNS $ sudo vi /etc/resolvconf/resolv.conf.d/base(这个文件默认是空的),插入: n ...

  3. ubuntu下设置DNS服务器

    当网卡通过DHCP获取IP地址时,DHCP会根据DHCP服务器配置,自动给系统分配DNS服务器地址,此时执行 ping www.baidu.com 动作,会将百度的域名在本地转换成ip地址,然后走路由 ...

  4. [转载]--Ubuntu下修改DNS重启也能用的方法

    安装好Ubuntu之后设置了静态IP地址,再重启后就无法解析域名.想重新设置一下DNS,打开/etc/resolv.conf cat /etc/resolv.conf# Dynamic resolv. ...

  5. 【Ubuntu】Ubuntu网络配置DNS失效问题处理

    安装了Ubuntu Server版本,配置了静态IP地址,并配置了DNS.但重启之后,发现连接外网时候,还是存在问题. 找了一下,是DNS的问题. 可以这样处理: lifeccp@ubuntu:~/w ...

  6. Ubuntu命令设置ip网关dns

    本文系转载,介绍Ubuntu如何设置IP和网络来连接网络 如果是在虚拟机中使用Ubuntu,那么设置之前请先参照我的上一遍文章虚拟机Net方式设置连接外网中的网络设置部分,先设置好主机的网络,然后配置 ...

  7. Ubuntu中设置静态IP和DNS

    在Ubuntu中设置静态IP共两步:1>设置IP:2>设置DNS1>设置IP    编辑 /etc/network/interface文件:       sudo vi /etc/n ...

  8. Ubuntu中设置静态IP和DNS(转载)

    原文地址:http://blog.sina.com.cn/s/blog_669421480102v3bb.html VMware 中使用网络,对虚拟机设置静态IP:在Ubuntu中设置静态IP共两步: ...

  9. Linux - ubuntu 设置固定ip和设置dns

    ubuntu 设置固定ip和设置dns 1.ifconfig 查看网卡名称 root@jiqing-virtual-machine:~# ifconfig ens32 Link encap:以太网 硬 ...

随机推荐

  1. Iaas-cloudstack

    http://cloudstack.apt-get.eu/systemvm/4.6/ 模板地址 http://cloudstack.apt-get.eu/centos7/4.6/ 代理及管理地址 ht ...

  2. linux概念之/proc与/sys

    http://blog.chinaunix.net/uid-1835494-id-3070465.html  proc/x:1/sched http://bbs.chinaunix.net/threa ...

  3. Sublime Text3注册码 (备用)

    复制如下三个任意一个正版注册码即可—– BEGIN LICENSE —–Andrew WeberSingle User LicenseEA7E-855605813A03DD 5E4AD9E6 6C0E ...

  4. ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室 实战系列。开源啦!!!

    自此系列博客开写以来,好多同学关心开源问题,之前由于网络问题,发布到Github上老是失败,今天终于在精简了好多无用的文件之后发布上去了. 注意:layim源代码并不开源,由于版权问题,请大家去官网了 ...

  5. C99新特性:变长数组(VLA)

    C99标准引入了变长数组,它允许使用变量定义数组各维.例如您可以使用下面的声明: ; ; double sales[rows][cols]; // 一个变长数组(VLA) 变长数组有一些限制,它必须是 ...

  6. SQL SERVER 生成ORACLE建表脚本

    /****** Object: StoredProcedure [dbo].[GET_TableScript_ORACLE] Script Date: 06/15/2012 13:07:16 **** ...

  7. Innodb锁机制:Next-Key Lock 浅谈(转)

    http://www.cnblogs.com/zhoujinyi/p/3435982.html 数据库使用锁是为了支持更好的并发,提供数据的完整性和一致性.InnoDB是一个支持行锁的存储引擎,锁的类 ...

  8. 如何增加swap 大小

    第一步:(这里增加2G) [root@kmdbrac1 /]# mkdir swap    #创建一个文件夹,存放交换空间文件 [root@kmdbrac1 /]# cd swap         # ...

  9. phonegap–app启动欢迎引导页localstorage

    对一个新的app,一般情况都会添加一个介绍和欢迎的页面来告诉用户app的功能和新的特性. 那么在phonegap项目里面如何添加这样个引导欢迎页. 这里需要注意的是只有app第一次打开的时候才会有,其 ...

  10. jsoncpp用法通俗易懂之将数据合成json格式

    void *upload(void *pParam) { CUpSender *s = (CUpSender*)pParam; map<string, string> mx; char t ...