为了便于搭建测试环境。使用vmware lite版安装完1个centos虚拟系统后,通过复制原安装好的安装文件,克隆另外两台centos主机。不过后两台在启动后,发现没有获取到地址(第一台启动正常获取到了地址)。再通过service network restart重启网络后,发现vmware里的centos系统出现了如下的报错:

device eth0 does not seem to be present, delaying initialization

初始想到会不会是mac地址相同造成的,于是修改 设置——网络适配器设置——高级——生成mac ,重新生成新的mac地址。再执行service network restart,发现问题依旧。没办法,到网上查下造成问题的原因。发现问题是猜对了,果然是mac地址引起的,处理方法如下:

1、 vim /etc/sysconfig/network-scripts/ifcfg-eth0 ifcfg-eth0的配置文件里保存了以前的MAC地址,就把这一行删除掉。

2、 删除 /etc/udev/rules.d/70-persistent-net.rules 文件,重启机器。 因为这个文件绑定了网卡和mac地址,所以换了网卡以后MAC地址变了,所以不能正常启动,也可以直接编辑这个配置文件把里面的网卡和mac地址修改乘对应的,不过这样多麻烦,直接删除重启,它会自动生成个。

造成该问题的原因很简单,两个配置文件中都记录网卡原来的mac地址。/etc/udev/rules.d/70-persistent-net.rules 这个文件绑定了网卡和mac地址,而更换mac以后,该文件记录的仍然是原来的值,所以不能正常启动。也可以直接编辑这个配置文件把里面的网卡和mac地址修改乘对应的,不过这样麻烦,直接删除重启,它会自动生成个。