您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

CentOS里ifcfg的device详解

添加时间:2017-8-2 23:10:00  添加: 思海网络 
#cat ifcfg-eth0 

device=eth0 

...

原因:有个多节点服务器迁移机房,怕碰坏了,先把硬盘拆下来,结果放回去的时候记错顺序了,造成开机  网卡对不上,原有的eth01变成eth23,知道怎么搞。

分析:

CentOS下找不到eth0设备的解决方法

经过百度,了解了一些信息,特此记录在此,以备忘。 为什么eth0会变成eth1? 很多Linux  distribution使用udev动态管理设备文件,并根据设备的信息对其进行持久化命名。udev会在系统引导的过程中识别网卡,将mac地址和网卡名称对应起来记录在udev的规则脚本中。而对于新的虚拟机,VMware会自动为虚拟机的网卡生成MAC地址,当你克隆或者重装虚拟机软件时,由于你使用的是以前系统虚拟硬盘的信息,而该系统中已经有eth0的信息,对于这个新的网卡,udev会自动将其命名为eth1(累加的原则),所以在你的系统启动后,你使用ifconfig看到的网卡名为eth1。

这里的eth0是在/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 0x8086:0x100f (e1000) 

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

解决:  为什么eth0会变成eth1?

如何恢复到eth0?  udev记录网络规则的脚本为:/etc/udev/rules.d/70-persistent-net.rules  [user@localhost ~]$ vi /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. 

# PCI device 0x1022:0x2000 (pcnet32) 

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:5a:6c:73", ATTR{type}=="1",KERNEL=="eth*", NAME="eth0" 

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a9:22:9d", ATTR{type}=="1",KERNEL=="eth*", NAME="eth1" 

CentOS下找不到eth0设备的解决方法  打开该文件,这时你会发现,里面有eth0,eth1两个网卡的信息,但实际上你ifconfig时只能发现eth1一个网卡的信息,这时因为eth0根本就不存在。  将其中eth0的信息删掉,并将eth1信息中的设备名改为eth0,重启系统,你看到的网卡就是eth0了,或者删掉其中所有的信息重启系统udev会帮你发现新的设备的。  另外还有一个启动脚本文件/etc/sysconfig/network-s/ifcfg-eth0,该文件中的mac地址为原来eth0网卡的物理地址,而虚拟机为eth1分配新的物理地址,故启动脚本中的信息与实际信息时不匹配的,将MAC的地址信息修改为70-persistent-net.rules中的eth1的MAC地址,再次重启网络,就完全恢复到以前eth0网卡的状态了。


关键字:CentOS、服务器、网卡
分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站