Linux网卡启动顺序排列之道(linux网卡启动顺序)

Linux网卡启动顺序排列之道

随着网络技术的发展,操作系统也变得越来越复杂。Linux是一种开放源代码的多用途操作系统,同时也是服务器和PC上最受欢迎的操作系统之一。为了正确地完成系统启动过程,Linux操作系统飞速地识别系统上的网卡,启动网络驱动程序,但它不会自动确定网卡的启动顺序,因此,当操作系统中安装有多个网卡时,我们必须显式地指定网卡的启动顺序。

网卡的启动顺序对系统的启动有着决定性的影响,比如如果第一个网卡的加载失败,那么内核的后续加载就会因为无法挂载root分区而出现错误。如果系统中安装拨号设备,在网卡启动顺序中排在第一位也会导致拨号失败。

为了准确控制网卡启动顺序,Linux操作系统引入了udev机制,其实现方式是将网卡和对应的kernel初始化脚本(init script)关联起来,从而实现按照init script的先后顺序进行网卡的初始化操作。以CentOS 6.5为例,可以使用如下命令进行操作:

# cd /etc/udev/rules.d

# vi 70-persistent-net.rules

# 在文件中修改网卡启动顺序

上面的70-persistent-net.rules文件中,包含了本机每一个网卡的唯一识别标识,也就是它对应的字符设备号,按照如下格式组织在该文件中:

# PCI device 0x14e4:0x1648 (broadcom)

SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”?*”, ATTR{address}==””, NAME=”eth0″

因此,如果网卡的地址顺序改变了,只需要将上面的NAME字段改为eth1,eth2…的格式就可以控制网卡的启动顺序,从而解决多网卡的启动顺序问题。

总之,Linux系统上控制网卡启动顺序的方法,主要依靠Udev来实现,通过编辑70-persistent-net.rules文件,可以指定每个网卡的启动顺序,从而解决网卡启动顺序问题。


数据运维技术 » Linux网卡启动顺序排列之道(linux网卡启动顺序)