在Linux5的时代,我们知道,关于网络的配置服务是“network”,每次要应用针对网卡的配置,只需要在以下两条路径中任选一个即可:
1.service network restart
2.ifdown eth0;ifup eth0

但是,当系统升级到了RHEL6的时候,情况不一样了。
有时候,像RHEL5的时候那样发出上述的两条命令,你也许会得到下图所示的错误反馈:
RHEL6和RHEL5中的网卡配置的差异-NetworkManager_rhel5
不了解情况的人也许会以为是主机的网卡硬件出了问题?
没错,这是可能发生的情况之一。

另一种情况则如下所述:
——
就像报错的反馈中显示的那样:“Device not mamanaged by NetworkManager or unavailable.”
设备不被“NetworkManager”管理了。

RHEL6,为了更好的管理网络,推出了一个全新的服务:NetworkManager。
该服务是由几个部分组成的,各具职能:
1.管理系统的网络连接,并且将其状态通过D-Bus通报给后台服务。
2.允许用户管理网络连接的客户端工具。

RHEL6和RHEL5中的网卡配置的差异-NetworkManager_networkmanager_02

(“NetworkManager”是由软件包“NetworkManager”提供的。)

对于发生了上面截图所示的错误的状况,最简单的方法是禁用掉NetworkManager服务,按照老的方式,直接使用network服务。
Shell Log:

RHEL6和RHEL5中的网卡配置的差异-NetworkManager_rhel5_03

接下来的操作跟RHEL5的时候管理网络没有什么区别了:

1.修改网卡的配置文件:/etc/sysconfig/network-script/ifcfg-*
2.如果涉及到DNS的配置,在/etc/resolv.conf文件中添加记录“nameserver xxxx”
3.重启网络服务(service network restart)或者重启特定的网卡(ifdown;ifup)。

此外,需要说明的是:
NetworkManager服务会定期的重写配置文件:/etc/resolv.conf。
所以,在RHEL6中,需要给网卡添加DNS,仅仅修改解析的配置文件是暂时的解决问题,几分钟后,该文件会被重写,添加的“nameserver”条目会被冲掉。
正确的配置方法是,在网卡的配置文件(ifcfg-*)中添加“DNS1”或者“DNS2”记录,然后重启“NetworkManager”或者“network”服务,则resolv.conf解析文件会被自动重写,DNS的相关记录也会被自动的添加进去。

查看“NetworkManager”中是否真的应用了相关的配置:

RHEL6和RHEL5中的网卡配置的差异-NetworkManager_it_04