打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Device eth0 does not seem to be present, dela...

Device eth0 does not seem to be present, delaying initialization.

  作者:admin   发布:2012-08-01 01:31   围观:   1条评论  

昨天在vm里面克隆了个虚拟机,克隆之后,启动了网卡起不来,已启动就报
Device eth0 does not seem to be present, delaying initialization.[FAILED]
经过各种google,最终要是找到了答案
使用克隆后的虚拟机时发现原来在基本系统中的网卡eth0到了新系统却没有了,使用ifconfig -a会发现只有lo。
因为基本系统的网络相关配置都是基于eth0的,如果基于此克隆虚拟机继续克隆或复制新的虚拟机,网卡的标识每一次都会自动加1变成eth1(第二次克隆会变成eth2),dmesg却显示内核只识别到网卡eth0。

原因分析: 很多Linux distribution使用udev动态管理设备文件,
并根据设备的信息对其进行持久化命名。例如在centos中,udev会在系统引导的过程中识别网卡,
将mac地址和网卡名称对应起来记录在udev的规则脚本中。而VMware会自动生成虚拟机的mac地址。这样,
由于基本系统的虚拟机已经记录了该虚拟机的网卡mac地址对应于网卡eth0,在克隆出的虚拟机中由于mac地址发生改变,
udev会自动将该mac对应于网卡eth1。以此类推,udev会记录所有已经识别的mac与网卡名的关系,所以每次克隆网卡名称会自动加1,
而其实kernel仅仅只识别到一张网卡,跟网卡名相关的网络配置也未发生任何变化。解决方案:
udev将mac与网卡名称的对应关系保存在/etc/udev/rules.d/70-persistent-net.rules中,
可以看到文件内容如下

# PCI device 0x8086:0x100f (e1000)SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:7b:60:38", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" # PCI device 0x8086:0x100f (e1000)SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:29:b9:c5", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

在克隆出的虚拟机中只要删除跟NAME="eth0"相关的行,并且把eth1的改为eth0,并重启系统即可。
另外外一种方法是:把里面的内容都删除,然后重新启动,系统也会重新发现网卡硬件,重新产生该文件

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
CentOS Linux解决Device eth0 does not seem to be present
device eth0 does not seem to be present, delaying i
linux修改网卡设备名称
centos : device eth0 does not seem to be present, delaying initialization
Bringing up interface eth0: Device eth0 does not seem to be presen
Ubuntu下更改eth0网卡名称为eth1
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服