克隆虚拟机后vmware不能上网

原创 2012年03月29日 19:00:56

VMWare克隆或复制Linux虚拟机后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仅仅只识别到一张网卡,跟网卡名相关的网络配置也未发生任何变化。

解决方案: 

在我的linux 下修改/etc/udev/rules.d 下的 70-persistent-net.rules 文件 删除

# 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"即可。

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


这里补充一点: 

用下面命令来实现上述第二种方法也是一样的:

cd /etc/udev/rules.d
sudo rm *-net.rules    //删除
sudo reboot

 

 

本人在用上述方法操作之后,再用ifconfig查看,确实找到了eth0设备,但没有ip地址。

接下来用ifconfig命令设置ip地址,一些相关命令如下:

ifconfig eth0 192.168.0.10 将采用默认子网掩码
ifconfig eth0 192.168.0.10 netmask 255.255.255.252 (手动定义子网掩码)(重启后无效)

ifconfig eth0 down(停用网卡)
ifconfig eth0 up(激活网卡)

service network restart(重启网络服务)
/etc/rc.d/init.d/network restart(同上)

我用ifconfig eth0 192.168.0.10 netmask 255.255.255.252 设置完ip,然后执行service network restart。

系统提示:eth0已有的MAC地址和系统要设置的不符,设置MAC地址失败。

因为网卡配置信息保存在/etc/sysconfig/network-scripts/ifcfg-eth0配置文件中,所以就去看看它吧。

文件的基本内容如下:

DEVICE=eth0(哪张网卡)

ONBOOT=yes
BOOTPROTO=static(静态ip状态设置)

BOOTPROTO=dhcp(dhcp获取)

IPADDR=192.168.1.8(静态ip地址)
NETMASK=255.255.255.0
GATEWAY=192.168.1.1(网关)

HWADDR=00:0C:29:96:38:F8(修改mac地址)(永久有效)

我把文件的内容进行了删减,只留下

DEVICE=eth0

BOOTPROTO=dhcp

HWADDR=00:0C:29:96:38:F8(修改为提示信息中指出的系统期望赋给eth0的MAC)

ONBOOT=yes
重启Linux后可以正常上网了。

 

另外,VMWare的网络要使用桥接网络,或者设置中要使用VMnet8,如下图所示:

 

 

service network start

 不设置ifcfg时或者设置网络连接的配置

如果出现以下错误

弹出回环接口:

RTNETLINK answers: File exists

RTNETLINK answers: File exists

RTNETLINK answers: File exists

RTNETLINK answers: File exists

…………………………

 

在命令依次敲入下列命令,其实我并不知道前两条命令的真正用意,跟着敲就是了。

#chkconfig --level 35 network on
#chkconfig --level 0123456 NetworkManager off

#service NetworkManager stop  //如果没有开启万恶的NM的话,这步可能会失败,不过不重要。
#service network stop
#service network restart   //网上说到这一步就已经不会出现上边的错误了

如果还不行,重启系统看看

瞧!现在已经不会出现这个错误了吧

#service network restart
正在关闭接口 eth0:                                     [确定]
关闭环回接口:                                             [确定]
弹出环回接口:                                             [确定]
弹出界面 eth0:                                            [确定]

现在一切都正常了,这样如果还不能上网的话就按照正常套路去设置ifcfg-eth0就行了

 

 

另一种上网方案就是直接用vmwarenet8 的NAT方式上网不需要实际ip,在操作系统里应将网络设置为自动获取dhcp

【VMware】完整克隆虚拟机后连不上网

记录一下完整克隆虚拟机后连不上网的问题解决方案。 背景:       使用static的方式手动设置了静态IP,完整克隆之后却不能连接到虚拟机了。产生这个问题的原因是克隆之后,新的克隆 副本的网卡信息...
  • Readiay
  • Readiay
  • 2016年03月08日 11:25
  • 3985

VMware虚拟机克隆Linux系统后找不到eth0网卡的问题

本人使用的是centos6.5 ,在克隆结束以后发现没有eth0网卡,然后找了网上的许多办法,结果还是没解决,最后凭着感觉试了一下另外一个办法,其实大同小异,就是中间有一个关键步骤给漏了,所以重新写了...
  • qq_19175749
  • qq_19175749
  • 2016年04月01日 02:27
  • 1240

虚拟机克隆之后,网卡名称从eth0变成eth1之后的解决办法

使用VMware安装了CentOS虚拟机,克隆之后使用service network restart指令来重新启动网络服务时,会看到有eth0网卡不存在的提示。 出现这种现象的原因是,很多Linux ...
  • wcb2003
  • wcb2003
  • 2014年10月15日 20:18
  • 4260

Vmware克隆虚拟机后不能上网问题

使用Vmware克隆当前一台虚拟机的时候,选择的比较省空间的创建链接克隆方式 创建后发现,克隆的虚拟机mac地址被占用,无法联网 解决方法:在克隆的虚拟机关闭状态,重新自动配置网络...
  • tjbsl
  • tjbsl
  • 2016年01月21日 10:51
  • 431

VMWare克隆或复制Linux虚拟机后无法上网的解决

原因分析: 很多Linux distribution使用udev动态管理设备文件,并根据设备的信息对其进行持久化命名。例如在Debian etch中,udev会在系统引导的过程中识别网卡,将mac地...
  • xzgcbtxq
  • xzgcbtxq
  • 2014年09月15日 08:39
  • 658

【VMware】完整克隆虚拟机后连不上网解决方案

记录一下完整克隆linux(CentOS6.X)虚拟机后连不上网的问题解决方案。背景:使用static的方式手动设置了静态IP,完整克隆之后却不能连接到虚拟机了。产生这个问题的原因是克隆之后,新的克隆...
  • vampirehgg
  • vampirehgg
  • 2017年04月17日 01:06
  • 455

VMware完整克隆虚拟机后连不上网

记录一下完整克隆虚拟机后连不上网的问题解决方案。 背景:       使用static的方式手动设置了静态IP,完整克隆之后却不能连接到虚拟机了。产生这个问题的原因是克隆之后,新的克隆 副本的网...
  • andyzhaojianhui
  • andyzhaojianhui
  • 2017年07月27日 21:56
  • 312

解决vmware虚拟机克隆Centos后,不能做Net的联网问题

在克隆后的虚拟机内执行如下命令: su root cd /etc/sysconfig/network-scripts cp ifcfg-eth0 ifcfg-eth1 setup ...
  • sigangjun
  • sigangjun
  • 2013年09月15日 08:27
  • 771

关于VMware中克隆虚拟机后不能联网问题

克隆虚拟机之后使用ifconfig命令查看ip等信息,如下图 此时机器不能ping通百度,因为克隆后会出现两个网卡eth0和eth1,需要修改网卡名称使配置生效使用命令 : vi /et...
  • yang920106
  • yang920106
  • 2017年03月07日 10:02
  • 191

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

原文链接: http://user.qzone.qq.com/554170166/blog/1304862080#!app=2&via=QZ.HashRefresh&pos=1304862080...
  • mrjy1475726263
  • mrjy1475726263
  • 2013年01月15日 13:57
  • 1761
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:克隆虚拟机后vmware不能上网
举报原因:
原因补充:

(最多只允许输入30个字)