象牙酥 Missing My Rainbow

L09-Linux系统修改网卡名称(eth1修改为eth0)

一、环境

  VirtualBox + CentOS6.5

 

二、问题

  有时候在克隆服务器之后配置网络时,或者在维护别人建好的服务器时,会遇到这样一种情况。如下图所示:

   

  即:在接口配置文件ifcfg-eth0中,配置的是网卡eth1的信息。

  这种不一致有可能对强迫症造成一定的困扰,有时候我们更想要的是:在ifcfg-eth0文件中,配置的应该是网卡eth0的信息,而网卡eth1,则应该是在ifcfg-eth1中进行配置。

 

三、解决办法

  要解决上面的问题,大致有两种方法:

  1) 将接口配置文件的文件名由ifcfg-eth0修改为ifcfg-eth1;

  2) 将网卡eth1的名称修改为eth0.

 

方法一:

  该方法实测是可行的,如下图所示,修改完之后直接重启网络即可。

   

 

方法二:

  这种方法的直观感觉是直接在ifcfg-eth0配置文件中将网卡名称由eth1修改为eth0,但是这样改的话,重启网络会出现Device eth0 does not seem to be present即:设备 eth0 不存在的错误,如下图所示,该问题的解决参考《L08-Linux解决Device eth0 does not seem to be present,delaying initialization问题》 。

   

  所以还不能简单粗暴的这么改,因为,正如下图由ifconfig –a命令查询到的,服务器所识别的网卡依然是eth1,而不是eth0。

  注:记住这里的mac地址08:00:27:74:39:02,在后面的实施步骤中可作为修改的依据,因为一台服务器的IP可以随意改变,但是mac地址是唯一的。

 

 

  为了解决这个问题,我们先修改/etc/udev/rules.d/70-persistent-net.rules文件中的配置,使得服务器的网卡名称由eth1变为eth0,然后,我们再将ifcfg-eth0中的网卡名也跟着改过来,最后重启网络。

  1) 修改配置文件/etc/udev/rules.d/70-persistent-net.rules。

  原/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:0x100e (e1000)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:9b:bb:3c", ATTR{type}=="1

", KERNEL=="eth*", NAME="eth0"

 
# PCI device 0x8086:0x100e (e1000)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:74:39:02", ATTR{type}=="1

", KERNEL=="eth*", NAME="eth1"

 

  修改后的内容如下:

# 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:0x100e (e1000)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:74:39:02", ATTR{type}=="1

", KERNEL=="eth*", NAME="eth0"

   如上面所示

  a)将原文件中的eth0的配置删掉了(因为它没用了,这项配置是我本次测试时克隆本服务器时源机器的配置,配置中对应的mac地址也是源服务器的mac地址,对我们目前这台服务器而言没用);

  b)将eth1网卡名称修改为了eth0(可注意到它的mac地址为08:00:27:74:39:02,恰恰就是我们要修改的条目。)

   

 

  2) 修改接口配置文件ifcfg-eth0,将网卡由eth1修改为eth0

   

 

  3) 重启机器,让服务器根据/etc/udev/rules.d/70-persistent-net.rules文件重新配置网卡信息

  可以发现,重启机器之后一进入服务器,网络就已经配置成一致的了,如下图:

   

 

   至此,修改完毕。

 

posted @ 2018-08-06 22:02  象牙酥  阅读(1222)  评论(0编辑  收藏  举报