Chinaunix

标题: 每次开机resolv.conf被重写解决方法 [打印本页]

作者: llzqq    时间: 2013-03-28 14:57
标题: 每次开机resolv.conf被重写解决方法
今天做了个自动安装ISO,用它自动安装了一个CENTOS 6.3,当时自动安装配置文件内定义了系统的两个nameserver设置。系统安装完成后我手动改了一下/etc/resolv.conf(以适应我本地网络环境),奇怪的是每次REBOOT机器后发现resolv.conf会被重置到原来的设置,查看了半天发现了玄机。

原来在网卡配置文件内发现这么几行内容:

DNS1="1.1.1.1"                 //原定义的一个DNS
DNS2="2.2.2.2"                 //原定义的一个DNS
NM_CONTROLLED="yes"     //这个是关键,这个开关定义了是否在每次系统启动过程中重新刷新resolv.conf这个文件内容,我晕!


恩,弄清楚了这些,果断删除了前两行,把“NM_CONTROLLED” 关掉了,这样一切正常了。

这些以前手动安装CENTOS是没有发生过,难道是自动安装惹的祸?
作者: llzqq    时间: 2013-03-28 14:58
相关解释:

NM_CONTROLLED=yes
Will have your network interface be managed the NetworkManager daemon.

NM_CONTROLLED=no
Will have your network interface be managed the old way. It means fully configured by the /etc/sysconfig/network-scripts/ifcfg-ethX files.


作者: dengbao2001    时间: 2013-03-28 15:15
默认情况下,网卡的很多设定都是通过 NetworkManager 这个服务来管理的,建议把这个组件给删除掉
作者: chenyx    时间: 2013-03-28 15:33
Network服务和NM服务二选一,要不然有冲突.
作者: llzqq    时间: 2013-03-28 16:00
回复 4# chenyx

我的ks.cfg是这样的,怎么做呢?

install
text
cdrom
lang en_US.UTF-8
keyboard us
network --device eth0 --bootproto static --ip 192.168.1.115 --netmask 255.255.255.0 --gateway 192.168.1.1 --nameserver 159.226.39.1,202.96.209.133 --hostname CentOS --noipv6 onboot=yes
rootpw 123456
firewall --disabled
authconfig --enableshadow --enablemd5
selinux --disabled
timezone --utc Asia/Shanghai
bootloader --location=mbr
clearpart --all --initlabel
autopart
zerombr yes
reboot --eject

%packages

@base
@core
@development
@network-tools
@system-admin-tools
setuptool
ntsysv
wget
sysstat
jwhois
bind-utils
ntp

%post
chkconfig sendmail off
chkconfig iptables off
%end


   
作者: chenyx    时间: 2013-03-28 16:14
chkconfig iptables off后面写
chkconfig NetworkManager off
chkconfig network on
然后用sed将ifcfg里面的那行yes改成no,应该就可以了
作者: llzqq    时间: 2013-03-28 16:39
本帖最后由 llzqq 于 2013-03-28 16:40 编辑

NetworkManager 这个是关闭的,问题就在这,只知道与他有关,可是这个服务是关闭的。玩了这么多年LINUX了,第一次遇到这个情况,以前都是手动安装从来没遇到过。
作者: chenyx    时间: 2013-03-28 16:49
那你直接在%post里面用sed修改ifcfg-eth0不行吗?
  1. sed -i "NM_CONTROLLED=s/yes/no/" /etc/sysconfig/network-scripts/ifcfg-eth0
复制代码

作者: llzqq    时间: 2013-03-28 17:55
回复 8# chenyx

恩,改这个容易,很多方法都能改,我的意思是ks.cfg里面有没有禁用NetworkManager的开关,就像selinux那样的。找了半天看来是没有,只能用chkconfig来关了,或者避开不装它。
   
作者: chenyx    时间: 2013-03-28 19:10
你将@network-tools这个去掉看看
作者: llzqq    时间: 2013-03-28 19:16
回复 10# chenyx

恩,现在去掉了@network-tools    @system-admin-tools可以避开NetworkManager软件包,resolv.conf也不被重置了,ifcfg-ethx中还是有NM_CONTROLLED="yes" ,但是不起作用了,回头再慢慢研究一下。


   
作者: chenyx    时间: 2013-03-28 19:20
没NM服务的话,那个配置有没有好些都没事
作者: chenyx    时间: 2013-03-28 19:20
没NM服务的话,那个配置有没有好些都没事
作者: yinzhedfs    时间: 2013-04-03 22:32
我是用chatter +i 让resolv.conf只读,无法更改!
作者: qq929300079    时间: 2013-04-05 20:47
楼主我和你遇到差不多的问题,不过我的是因为有/etc/resolv.conf.save文件在作怪




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2