vmware的虚拟机克隆技术及复制虚拟机的方法,都可以很快创建一个与原虚拟机配置相同的新虚拟机,可以节省配置、安装新虚拟机的时间. 但使用克隆后的虚拟机时发现原来系统中的网卡eth0到了新系统却没有了,使用ifconfig -a会发现只有eth1的信息。 /etc/sysconfig/network-scripts/ifcfg-eth0,网卡配置文件还是eth0,且内容没有什么问题 service network restart 弹出界面 eth0: 设备 eth0 似乎不存在,初始化操作将被延迟.. 错误原因: 如果基于一个虚拟机克隆或复制新的虚拟机,网卡的标识每一次都会自动加1(第二次克隆会变成eth2),dmesg却显示内核只识别到网卡eth0。很多 Linux distribution使用udev动态管理设备文件,并根据设备的信息对其进行持久化命名,将mac地址和网卡名称对应起来记录在udev的规则脚本 中,VMware会自动生成新虚拟机的mac地址。这样,新虚拟机的udev文件不仅记录了原虚拟机的eth0相关信息外,还会记录新虚拟机mac地址对 应的信息,此时udev会自动将该mac对应于网卡eth1。以此类推,udev会记录所有已经识别的mac与网卡名的关系,所以每次克隆网卡名称会自动 加1,而其实kernel仅仅只识别到一张网卡,跟网卡名相关的网络配置也未发生任何变化,所以会出现上面的报错信息。

解决错误:

  1. vim /etc/udev/rules.d/70-persistent-net.rules 1)注释或去掉原虚拟机eth0所在的行信息 2)将新生成的eth1所在的行信息中的eth1改为eth0,将此行的新mac地址写入ifcfg-eth0文件对应的mac地址处
  2. start_udev
  3. service network restart
  4. ifconfig -a确认网络信息