在VMware里克隆出来的CentOS Linux,ifconfig...没有看到eth0,然后重启网卡又报下面错误。
故障现象:
service network restart
Shutting down loopback insterface:
[ OK ]
Bringing up loopback insterface:
[ OK ]
Bringing up interface eth0: Device eth0 does not seem to be present,delaying initialization. [FAILED]
解决方法一:
首先,打开/etc/udev/rules.d/70-persistent-net.rules内容如下面例子所示:
vi /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:8f:89:9
7", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:50:bd:1
7", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
记录下,eth1网卡的mac地址00:0c:29:50:bd:17
接下来,打开/etc/sysconfig/network-scripts/ifcfg-eth0
vi /etc/sysconfig/network-scripts/ifcfg-eth0
将 DEVICE="eth0" 改成 DEVICE="eth1" ,
将 HWADDR="00:0c:29:8f:89:97" 改成上面的mac地址 HWADDR="00:0c:29:50:bd:17"
将目录/etc/sysconfig/network-scripts/ 的文件ifcfg-eth0 重命名为ifcfg-eth1
最后,重启网络
# service network restart
或者
# /etc/init.d/network restart
正常了。
解决方法二:
创建后的症状:启动之后使用ifconfig,发现无IP地址,只有回环地址为127.0.0.1。因此考虑是否因为MAC/IP地址及其主机名都与克隆前的源主机相同(源主机采用手动方式配置的IP)而产生此问题。
修改IP地址和MAC地址后,执行下面的重启等命令后依然无济于事:
最终解决方法:
1) 编辑网卡对应的eth0的配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0,删除配置文件中HWADDR地址及UUID所在的行。(提示:当然也可以根据实际的HWADDR和UUID修改,而不删除。见/etc/udev/rules.d/70-persistent-net.rules文件内容帮助)
2) 清空文件/etc/udev/rules.d/70-persistent-net.rules
3) 重启系统,执行reboot
原因猜测:这是VM克隆为了防止源机器和克隆机器启动网络配置地址冲突而做的保护策略,或者开发者自己也没有考虑到这个问题。
正常了。