克隆虚拟机后开机出现device eth0 does not seem to be present delaying initializa错误

一、背景:做测试需要搭建一套环境,利用vmware的克隆功能在已有虚拟机的基础上克隆出来一份专门用来做测试环境搭建。

二、问题:在克隆成功后启动新的虚拟机时出现device eth0 does not seem to be present delaying initializa(设备eth0不存在,延迟初始化)的错误,造成系统无法正常启动,一直卡在如下步骤,如图:

 

三、原因(摘自网络):克隆的Linux系统在新的机器上运行,新服务器网卡物理地址已经改变。而/etc/udev/rules.d/70-persistent-net.rules这个文件确定了网卡和MAC地址的信息之间的绑定,克隆后的网卡的MAC已经发生了变化,所以导致系统认为网络设备不存在,网络不能正常启动。另外一个就是/etc/sysconfig/network-scripts/ifcfg-eth0里面MAC地址也是以前的旧信息。

关于/etc/udev/rules.d/70-persistent-net.rules这个文件,系统在启动时会自动监测变化,然后由/lib/udev/write_net_rules写入到/etc/udev/rules.d/70-persistent-net.rules中一个新的配置节,网卡的的序号依次递增(如原来为eth0,则修改第一后生成一个eth1,再次修改后生成一个eth2...),且其ATTR{address}的值为当前网卡对应的mac地址。

以上引用:https://www.cnblogs.com/kerrycode/p/4345692.html

四、解决方案

网络上查找的解决方案基本都是克隆后的虚拟机能正常启动,然后在克隆的虚拟机中做的更改或设置,不适用我的情况,只能比葫芦画瓢将同样的方案在原始虚拟机上做修改;

1.将原始虚拟机快照备份,为了不影响在原始虚拟机修改的内容;

2.将原始虚拟机的/etc/udev/rules.d/70-persistent-net.rules文件删除;

3.修改原始虚拟机的vi /etc/sysconfig/network-scripts/ifcfg-eth0文件:

ifcfg-eth0的配置文件里保存了以前的MAC地址(HWADDR),删除该行,保存退出;

4.关闭原始虚拟机,并重新克隆;

5.启动克隆后的虚拟机,一切正常;

6.将原始虚拟机恢复至快照状态。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章