Chinaunix首页 | 论坛 | 博客
  • 博客访问: 217010
  • 博文数量: 47
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 482
  • 用 户 组: 普通用户
  • 注册时间: 2015-04-06 15:35
个人简介

贫则见廉,富则见义,生则见爱,死则见哀。

文章分类

全部博文(47)

分类: LINUX

2016-02-16 01:05:49

    管理的服务器有几台DELL服务器,同样安装的redhat6.5服务器,dell服务器的网卡标识却都是EM1...EMn,上网找了下资料,转来
改天试试。

第一种:

dmesg中看到如下一行信息:

kernel: udev: renamed network interface eth0 to em1

原来是udev这个设备管理进程在开机过程中将系统默认的eth0改名为em1了,其实em1对应的就是系统原本的eth0网卡;由于我在mini安装过程中没有对网络进行配置,所以系统默认没有将网卡激活导致ifconfig看不到任何网卡;只需要在/etc/sysconfig/network-scripts/ifcfg-em1中将参数 ONBOOT=no改为yes,然后service network restart 网卡em1就出现了!

总觉得Linux的网卡代号变成了em1不习惯,想还原为一直以来熟悉的eth0也是可以的,调整udev的网卡命名规则配置文件 /etc/udev/rules.d/70-persistent-net.rules 修改内容如下:

  1. # PCI device 0x14e4:0x163b (bnx2) (custom name provided by external tool)

  2. SUBSYSTEM==“net”, ACTION==“add”, DRIVERS==“?*”, ATTR{address}==“00:26:b9:80:b1:

  3. a5″, ATTR{type}==“1″, KERNEL==“eth*”, NAME=em2// 修改为eth1


  4. # PCI device 0x14e4:0x163b (bnx2) (custom name provided by external tool)

  5. SUBSYSTEM==“net”, ACTION==“add”, DRIVERS==“?*”, ATTR{address}==“00:26:b9:80:b1:

  6. a4″, ATTR{type}==“1″, KERNEL==“eth*”, NAME=em1 //修改为eth0

……………………依此类推。

这样系统就会把网卡命名还原为eth0了,但是我们还需要对网卡配置文件做相应修改否则网络和IP的配置都不会应用到eth0的网卡上;

将/etc/sysconfig/network-scripts/ifcfg-em1文件改名为 /etc/sysconfig/network-scripts/ifcfg-eth0,

并修改文件中的 DEVICE=em1为 DEVICE=eth0

如果有多张网卡,都要做相应修改,注意网卡代号的对应;

重启系统,熟悉的eth0网卡回来了,IP设置也生效了!


第二种:

第一步:修改系统grub
vi /boot/grub/grub.conf

增加一个 biosdevname=0 的启动参数,我修改的结果如下:

[root@localhost ~]# cat /boot/grub/grub.conf 
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,0)
# kernel /boot/vmlinuz-version ro root=/dev/sda1
# initrd /boot/initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-220.el6.x86_64)
root (hd0,0)
kernel /boot/vmlinuz-2.6.32-220.el6.x86_64 ro root=UUID=360d089b-d466-4005-abcb-c5e517d31a96 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD quiet SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM 
biosdevname=0 #--->这里是新加的
initrd /boot/initramfs-2.6.32-220.el6.x86_64.img

第二步:删除udev的配置文件rm -f /etc/udev/rules.d/70-persistent-net.rules

第二步可以不需要操作。

第三步:修改当前网卡配置文件的名称
mv ifcfg-em1》》》》》 ifcfg-eth0
mv ifcfg-em2》》》》》 ifcfg-eth1
mv ifcfg-em3》》》》》 ifcfg-eth2
mv ifcfg-em4》》》》》 ifcfg-eth3

第四步:修改网卡配置文件内容,把em1全部修改改为eth0

[root@xingfujie ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE="eth0"
BOOTPROTO="dhcp"
HWADDR="24:B6:FD:F8:D5:84"
NM_CONTROLLED="yes"
ONBOOT="yes"

可以使用命令进行替换,如下:

perl -p -i -e 's/em1/eth0/g' ifcfg-eth0 或sed -i 's/em1/eth0/g' ifcfg-eth0

最后一步:重新启动系统 shutdown -r now 启动之后你就发现熟悉的eth0-eth4已经回来啦,顺便说下centos 6.2 还有一个问题就是如果你没有在网卡配置文件里写dns的话,重启之后你就会发现 /etc/resolv.conf 文件被清空了,一个方法就是在网卡配置文件中写DNS,另一个方法就是给/etc/resolv.conf加i属性,chattr +i /etc/resolv.conf

dell官方是这么说的:

此文代表戴尔Enterprise Linux 设计团队的 Narayanan D 发表
Red Hat 现已推出的 Red Hat Enterprise Linux 6 Service Pack 1 (RHEL 6 SP1) 对网络接口实施了新的命名规则。戴尔同时开发,并遵从GPL协议义发布了‘biosdevname’ udev helper实用程序。它会根据网络接口在系统中的物理位置来建议新的设备名称。
将RHEL6 SP1 安装到支持的戴尔PowerEdge 服务器过程中,新的网络接口名称将变为:
            emN (em1, em2, ..)
以取代主板集成网口过去使用的 ethN 名称。
对于 PCI 扩展网络接口,名称将是:
          pXpY (pp - p1p1, p1p2, ..).
根据新的命名方案,em1 将映射 ‘Gb1’(em2 映射 ‘Gb2’),与服务器底座上的标签相同,从而使网络接口的有效管理更加轻松。名称 p1p2 可便于识别扩展网卡上的网络端口。
新的命名方案在支持的戴尔PowerEdge 平台上默认开启。在安装过程中传送‘biosdevname=0’ 内核命令行参数,即可禁用新命名方案,并在运行时中保留。
对 ethN 名称进行硬编码的现有脚本可能需要更改,使其能识别网络设备名称。

阅读(3800) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~