Chinaunix首页 | 论坛 | 博客
  • 博客访问: 78833
  • 博文数量: 14
  • 博客积分: 206
  • 博客等级: 入伍新兵
  • 技术积分: 112
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-21 21:26
文章存档

2014年(1)

2013年(6)

2012年(7)

我的朋友

分类: LINUX

2012-09-13 11:11:12

系统:ubuntu-8.10-server

打开复制的虚拟机以后,ping **********,提示找不到网络,ifconfig只有vnet0和lo两个网络适配器,没有eth0,ping主机ping不通了。ifconfig -a 多了一个eth1,后来chalet下资料;修改如下文件
/etc/udev/rules.d /70-persistent-net.rules

删除


SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”,ATTR{address}==”**:**:**:**:**:**”,
ATTR{type}==”1″, KERNEL==”eth*”, NAME=”eth0″

然后把SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:1d:19: c6", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"这一行的”eth1″修改为”eth0″即可。


其中的道理

我通过yimigao@126的博客里“虚拟机eth0找不到的解决方案”
这篇文章得知了一二,文章如下:

VMWare克隆或复制Linux虚拟机后eth0找不到的解决方案

现象描述:

最近装了虚拟机系统是 ,为了以后使用方便对虚拟机进行克隆或复制。当使用克隆后的虚拟机时发现原来在基本系统中的网卡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仅仅只识别到一张网卡,跟网卡名相关的网络配置也未发生任何变化。

解决方案:

另外一种方法是:把里面的内容都删除,然后重新启动,系统也会重新发现网卡硬件,重新产生该文件。

ok!

阅读(1388) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~