admin 管理员组

文章数量: 887016


2024年4月13日发(作者:视频教学爱)

VMware 下LINUX出现:Device eth0 does not seem to be present, delaying initialization.解决

办法

  VMware 下LINUX下使用ifconfig查看时无eth0网卡相应信息!

  最近装了虚拟机系统是 fedora9,为了以后使用方便对虚拟机进行克隆或复制。当使用克隆后的虚

拟机时发现原来在基本系统中的网卡eth0到了新系统却没有了,使用ifconfig -a会发现只有eth1。因

为基本系统的网络相关配置都是基于eth0的,eth1没有网络相关的配置,此时要正常该虚拟机中的网络,

只有添加eth1的网络配置,这样每次都要修改网卡配置在做多Linux系统测试的时候很不方便。更进一

步,如果基于此克隆虚拟机继续克隆或复制新的虚拟机,网卡的标识每一次都会自动加1(第二次克隆会

变成eth2),dmesg却显示内核只识别到网卡eth0。原因分析: 很多Linux distribution使用udev动

态管理设备文件,并根据设备的信息对其进行持久化命名。例如在Debian etch中,udev会在系统引导

的过程中识别网卡,将mac地址和网卡名称对应起来记录在udev的规则脚本中。而VMware会自动生成

虚拟机的mac地址。这样,由于基本系统的虚拟机已经记录了该虚拟机的网卡mac地址对应于网卡

eth0,在克隆出的虚拟机中由于mac地址发生改变,udev会自动将该mac对应于网卡eth1。以此类推,

udev会记录所有已经识别的mac与网卡名的关系,所以每次克隆网卡名称会自动加1,而其实kernel仅

仅只识别到一张网卡,跟网卡名相关的网络配置也未发生任何变化。解决方案: 网络搜索发现在Debian

etch下,udev将mac与网卡名称的对应关系保存在/etc/udev/rules.d/z25_中,

在克隆出的虚拟机中只要删除跟NAME="eth0"相关的行并重启系统即可。例如在Debian etch中删除如下

两行: # PCI device 0x1022:0x2000(pcnet32)SUBSYSTEM=="net",DRIVERS=="?*",ATTRS{address}

=="00:0c:29:4c:46:01",NAME="eth0" 在我的fedora9 下修改/etc/udev/rules.d 下的 70-persistent-

文件 删除 # Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rule written by

anaconda) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",

ATTR{address}=="00:0c:29:ad:06:2a", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" 然后把eth1

对应的哪一行的"eth1"修改为"eth0"即可。另外一种方法是:把里面的内容都删除,然后重新启动,系

统也会重新发现网卡硬件,重新产生该文件。 ok!

  总结:

  1: 编辑如下文件

  vi /etc/udev/rules.d/

  注释NAME="eth0" 所以行

  2: 注释NAME="eth0" 所以行

  # Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rule written by anaconda)

  #SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:ad:06:2a",

ATTR{type}=="1", KERNEL=="eth*",NAME="eth0"

  3:修改IP地址及主机名

  4:重启,问题解决!

  VMware 下LINUX出现:Device eth0 does not seem to be present, delaying initialization.

解决办法

  在做mysql cluster 和lvs cluster的时候用的vmware虚拟环境

  系统: ubuntu server 6.10

  /sbin/ifconfig发现copy/clone之后的虚拟机没网卡

  原来是因为vmware已经修改了mac地址,而系统里面仍然保留原来的mac地址

  修改/etc/iftab 为 中配置的mac即可

  顺带提下,别忘记了改主机名(/etc/hostname)和ip(/etc/network/interfaces)地址

  VMware 下LINUX出现:Device eth0 does not seem to be present, delaying initialization.

解决办法

  在windowXP下安装了suse linux,在vmware下选择了host-only方式与主机通信。

  使用host-only方式与主机通信,vmware使用的是VMware Network Adapter VMnet1虚拟网卡,查

看该网卡的IP是 192.168.174.1。

  在虚拟机下面的linux下遇到了一下几个问题:

  1、找不大 eth0网卡,也就连不上网络。症状是ifconfig以后只现实lo,不显示eth0。

  解决方法:

  ifconfig eth0 up。这样ifconfig以后就显示了eth0。

  找到eth0以后,再运行ifconfig eth0 192.168.174.2 netmask 255.255.255.0。即可与主机通信。


本文标签: 网卡 系统 网络 对应 配置