使用模板创建linux虚拟机网卡无效

发布时间:  2015-04-08 浏览次数:  1428 下载次数:  9
问题描述

FusionCompute中使用linux模板虚拟机创建虚拟机启动时,发现网卡无效,显示错误

Eth0error while getting interface flags No such device

使用ifconfig –a ,没发现eth0,发现eth1,在/etc/sysconfig/network/下有一个ifcfg-eth0的文件,但是没有ifcfg-eth1的文件

处理过程

在创建模板虚拟机时的时候将70-persistent-net.rules文件先删除,再创建为模板虚拟机。


根因

linux启动时,在/etc/udev/rules.d目录下70-persistent-net.rules记录了网卡mac地址和网卡名称的对应关系,当新建一个虚拟机时,网卡的mac地址发生了改变,linux内部配置文件中的mac地址还是以前的,所以导致配置文件中的eth0找不到

解决方案

方法一:在创建模板虚拟机时的时候将70-persistent-net.rules文件先删除,再创建为模板虚拟机。

方法二:修改70-persistent-net.rules文件

打开/etc/udev/rules.d/70-persistent-net.rules文件

# PCI device 0x1022:0x2000 (pcnet32)

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

ATTR{address}=="00:0c:29:50:xx:xx", ATTR{type}=="1", NAME="eth0"

 

# PCI device 0x1022:0x2000 (pcnet32)

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

ATTR{address}=="00:0c:29:36:xx:xx", ATTR{type}=="1", NAME="eth1"

删除eth1的配置,用eth1mac地址代替eth0mac地址

    重启网卡

建议与总结

在删除前最好将70-persistent-net.rules复制一份在删除,以防误操作后恢复

END