Linux克隆引发的网卡启动失败多种解决方案


故障现象:

最近在公司测试环境克隆了几个Linux系统,重启之后发现,网卡eth0都不见了

于是检查了网卡配置,最终想到以下几种解决方案,网卡启动信息如图所示:

Linux克隆引发的网卡启动失败多种解决方案

[root@test3 ~]# service network restart

Shutting down loopback insterface:                                                         [   OK  ]

Bringing up loopback insterface:                                                             [   OK  ]

Bringing up interface eth0:  Device eth0 does not seem to be present,delaying initialization.                    [FAILED]

 

方法一:

[root@test3 ~]# rm -rf /etc/udev/rules.d/70-persistent-net.rules

[root@test3 ~]# init 6

[root@test3 ~]# service network restart

Shutting down loopback insterface:                                                         [   OK   ]

Bringing up loopback insterface:                                                             [   OK   ]

Bringing up interface eth0:                                                                     [   OK   ]

 

方法二:

造成这样的原因,是因为在虚拟机(Vmware)中移动了Centos系统对应的文件

导致重新配置时,网卡的MAC地址变了,输入ifconfig -a,找不到eth0

 

安装完一个centos虚拟机,又拷贝一份,开机后网卡无法正常启动

报错:

Device eth0 does not seem to be present, 
delaying initialization

解决:

[root@test3 ~]# cd /etc/sysconfig/network-scripts/

[root@test3 ~]# mv ifcfg-eth0 ifcfg-eth1


[root@test3 ~]# vim sysconfig/network-scripts/ifcfg-eth1

修改DEVICE="eth0" 
为DEVICE="eth1"

[root@test3 ~]# service network restart

 

方法三:

故障前的操作:

DELL刀片装的是CentOS6.3的操作系统,网卡识别的是em1和em2,由于工作需要做了槽位调整,并启动了刀片

 

故障现象:

启动后网络不通,通过iDRAC登录后route查看缺省路由正常;

重启网络服务:

[root@test3 ~]# service network restart

Shutting down loopback insterface: [ OK ]Bringing up loopback insterface: [ OK ]Bringing up interface em1: Device em1 does not seem to be present,delaying initialization. [FAILED]


分析问题和解决:

之前在别的文章中我们提过70-persistent-net.rules文件,所以看了一下:


[root@test3 ~]# vim /etc/udev/rules.d/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 0x14e4:0x163a (bnx2) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="24:b6:fd:ab:76:1e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x14e4:0x163a (bnx2) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="24:b6:fd:ab:76:1c", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"


发现NAME的名称不正确,依次将上述红色字体中的eth0改为em1,eth1改为em2;

*切记:网卡编号由MAC地址大小决定,MAC越小网卡编号越小;

如下:

# PCI device 0x14e4:0x163a (bnx2)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="24:b6:fd:ab:76:1e", ATTR{type}=="1", KERNEL=="eth*", NAME="em2"

# PCI device 0x14e4:0x163a (bnx2) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="24:b6:fd:ab:76:1c", ATTR{type}=="1", KERNEL=="eth*", NAME="em1"

保存退出~!

[root@test3 ~]# init 6

问题解决~!


本文转自 2012hjtwyf 51CTO博客,原文链接:http://blog.51cto.com/hujiangtao/1924387,如需转载请自行联系原作者
上一篇:SQL Server中授予用户查看对象定义的权限


下一篇:PostgreSQL 模糊查询最佳实践 - (含单字、双字、多字模糊查询方法)