阿里云
发表主题 回复主题
  • 351阅读
  • 0回复

RHEL6.3克隆虚拟机后的网卡启动失败问题解析

级别: 小白
发帖
0
云币
-18
公司测试环境安装的都是RHEL6.3,在进行虚拟机克隆后,发现clone的虚拟机网卡起不来,具体报如下错误:

[root@localhost Desktop]# service network restart

Shutting down loopback interface:                        [  OK  ]

Bringing up loopback interface:                            [  OK  ]

Bringing up interface eth0:  Error: No suitable device found: no device found for connection 'System eth0'.

                                                           [FAILED]


当你执行ifconfig命令的时候,会发现显示eth1网卡的配置文件却为/etc/sysconfig/network-scripts/ifcfg-eth0。


[root@localhost network-scripts]# ifconfig|grep addr

eth1      Link encap:Ethernet  HWaddr 00:0c:29:f4:95:e3  

          inet6 addr: fe80::20c:29ff:fe5c:65b7/64 Scope:Link

          Interrupt:19 Base address:0x2024

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

[root@localhost network-scripts]# ls

ifcfg-eth0   ifdown-isdn    ifup-aliases  ifup-plusb     init.ipv6-global

ifcfg-lo     ifdown-post    ifup-bnep     ifup-post      net.hotplug

ifdown       ifdown-ppp     ifup-eth      ifup-ppp       network-functions

ifdown-bnep  ifdown-routes  ifup-ippp     ifup-routes    network-functions-ipv6

ifdown-eth   ifdown-sit     ifup-ipv6     ifup-sit

ifdown-ippp  ifdown-tunnel  ifup-isdn     ifup-tunnel

ifdown-ipv6  ifup           ifup-plip     ifup-wireless

[root@localhost network-scripts]#


产生这个问题的原因是虚拟机分配给操作系统的虚拟网卡MAC地址是不一样的。第一个系统的网卡MAC地址记录在了/etc/udev/rules.d/70-persistent-net.rules,命名为eth0。新克隆分配的系统的网卡MAC地址也记录在了该文件当中,与之前的系统一样,因此有了冲突。


可以查看一下两个机子的这个70-persistent-net.rules文件的内容


第一个系统:

[root@localhost rules.d]# cat 70-persistent-net.rules

# This file was automatically generated by the /lib/udev/write_net_rules

# program, run by the persistent-net-generator.rules rules file.

#

# You can modify it, as long as you keep each rule on a single

# line, and change only the value of the NAME= key.


# PCI device 0x1022:0x2000 (pcnet32)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:f4:95:e3", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

 


克隆后的系统:


[root@localhost rules.d]# cat 70-persistent-net.rules

# This file was automatically generated by the /lib/udev/write_net_rules

# program, run by the persistent-net-generator.rules rules file.

#

# You can modify it, as long as you keep each rule on a single

# line, and change only the value of the NAME= key.


# PCI device 0x1022:0x2000 (pcnet32)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:f4:95:e3", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

 


我们可以看到这两个系统中的MAC地址一样。


问题解决方法:

删除克隆后这个系统中的 /etc/udev/rules.d/70-persistent-net.rules文件,重启后系统会重新生成一个新的虚拟网卡MAC地址,然后把这个文件里NAME="eth1"的eth1改成eth0,同时也要修改ATTR{address}里的mac地址和/etc/sysconfig/network-scripts/ifcfg-eth0文件mac地址,并与新的虚拟网卡MAC地址保持一致。


如:将原文件的

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:f4:95:e3", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

 


改为 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:5c:65:b7", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

 


修改/etc/sysconfig/network-scripts/ifcfg-eth0文件


DEVICE="eth0"

IPV6INIT="yes"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

UUID="05944003-ae77-4c9d-9e58-3ec2851db71d"

DEFROUTE=yes

IPV4_FAILURE_FATAL=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

NAME="System eth0"

HWADDR=00:0c:29:5c:65:b7

然后重启网络服务,发现一切正常了。

[root@localhost Desktop]# service network restart

Shutting down interface eth0:  Device state: 3 (disconnected)

                                                           [  OK  ]

Shutting down loopback interface:                          [  OK  ]

Bringing up loopback interface:                            [  OK  ]

Bringing up interface eth0:  Active connection state: activating

Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/1

state: activated

Connection activated          [  OK  ]


设置IP后,再检查一下

[root@localhost Desktop]# ifconfig|grep addr

eth0      Link encap:Ethernet  HWaddr 00:0C:29:5C:65:B7

          inet addr:192.168.0.129  Bcast:192.168.0.255  Mask:255.255.255.0

          inet6 addr: fe80::20c:29ff:fe5c:65b7/64 Scope:Link

          Interrupt:19 Base address:0x2024

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host


注:如果你执行ifconfig命令的时候,发现仍然显示eth1而不是eth0,可以将系统重启一遍就变过来了。



发表主题 回复主题
« 返回列表
«12345678910»
共10页
上一主题下一主题

限100 字节
批量上传需要先选择文件,再选择上传
 
验证问题: 阿里云官网域名是什么? 正确答案:www.aliyun.com
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)

      版权声明

      开发者论坛为你提供“RHEL6.3克隆虚拟机后的网卡启动失败问题解析”的内容,论坛中还有更多关于 “RHEL6.3克隆虚拟机后的网卡启动失败问题解析” 的内容供你使用,该内容是网友上传,与开发者论坛无关,如果需要删除请联系zixun-group@service.aliyun.com,工作人员会在5个工作日内回复您。