PS:在使用VMware导入了一个已经存在的虚拟机或通过克隆来创建一个完整的linux克隆系统时经常会发现发现网卡没有启动,network服务,提示错误信息”Device eth0 does not seem to be present, delaying initialization.”
解决方法:
-
原因分析:
Centos6使用udev动态管理设备文件将MAC地址和网卡名称对应记录在udev的规则脚本中,VMware升级后或克隆或导入虚拟机,此时虚拟机网卡MAC会改变,这样系统会认为网卡是新增的并命名为eth1,查看如下:
[root@~]# ip add 1: lo:
mtu 16436 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth1: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:3a:35:08 brd ff:ff:ff:ff:ff:ff 注意
eth1:link/ether 00:0c:29:3a:35:08
-
解决方法:
-
一:setup命令动态增加eth1
setup
-
二:拷贝网络配置文件设备eth0为eth1,并修改其中的MAC地址
cd /etc/sysconfig/network-scripts/; mv ifcfg-eth0 ifcfg-eth1; vim ifcfg-eth1; #HWADDR修改成 ip add命令中显示的MAC地址 DEVICE=eth1 HWADDR=00:0c:29:3a:35:08
-
三:修改udev记录的mac与网卡名称对应规则:
vim /etc/udev/rules.d/70-persistent-net.rules # PCI device 0x1022:0x2000 (pcnet32) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:3a:35:08", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
-