记一次linux 如何更改网卡的顺序 |
您所在的位置:网站首页 › 更换网卡后如何设置 › 记一次linux 如何更改网卡的顺序 |
在使用维护过程中,经常因为添加更换网卡导致网卡的顺序产生不一至的现象 1、启动流程1)linux内核一般会在rc.sysinit里执行/sbin/udevd -d开始执行udev程序 2)执行udev的过程中会检测所有设备,并根据不同的设备来加载不同的驱动 3)加载完相应设备的驱动后,udev会收到一个该设备的内核事件,udev会根据相应的事件来匹配相应的规则,或者是执行某些脚本修改设备名重新书写规则(rules) 4)当规则生成后,当再次产生此设备的内核事件时,则首先会匹配这些规则 这里要注意udev的两点: 1)我们可以通过udev来修改任何设备的名字 2)在我们没修改名字之前,内核已经给给设备分配了名字(值得注意这点,否则修改的名字和内核给其他设备分配的名字冲突,则会修改失败) 2、不同的网卡设备 目前为止我已知的网卡有如下几种(都是intel的): 网卡型号 所用驱动 8086:1502 e1000e 8086:10d3 e1000e 8086:150e igb 8086:105e e1000e 8086:1521 igb 这只是我接触的几种网卡,不同种类的驱动对网卡端口的命名还是会有影响的 3.pci接口的bus id号 -bash-3.2# lspci -n –D grep 0200 0000:00:19.0 0200: 8086:1502 (rev 05) 0000:01:00.0 0200: 8086:150e (rev 01) 0000:01:00.1 0200: 8086:150e (rev 01) 0000:01:00.2 0200: 8086:150e (rev 01) 0000:01:00.3 0200: 8086:150e (rev 01) 0000:03:00.0 0200: 8086:105e (rev 06) 0000:03:00.1 0200: 8086:105e (rev 06) 0000:04:00.0 0200: 8086:10d3 我们通过lspci -n -D可以查看所有的连在pci接口上的设备的busid号(第一列)和设备型号(最后一列)的对应列表,这里的0200代表的是网卡设备,通过大量的实验发现,无论网口的名字(eth*)怎么变化,在同一台机器上,他们的busid号是不变的。这里的8086:1502,8086:10d3是主板自带的两个端口,8086:150e是一个4口的Intel网卡,8086:105e是一个两口的intel网卡。由此,在这一型号的机器上,这一型号的网卡上,可已通过busid号,网卡型号来固定网口名。 2、shell编写过程 查看目录/etc/udev/rules.d/70-persistent-net.rules问题发现:没有这个文件,自己手动创建也不好使,重启的时候不会执行 /lib/udev/write_net_rules这个脚本都不存在,应该是生成不了。 编写文件 命名完规则之后,网卡名称和pci的对应关系地方 ----------暂时未完成还差一些测试和总结,以后有机会在继续研究------------------------------ |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |