前一篇说了CentOS 6.x修改网卡名称em1、2...为eth0、1...的文章。最近由于系统升级,采用了CentOS7,也需要修改网卡名,本以为跟6.x一样的方式,结果失败了。
CentOS 6.x修改网卡名称em1、2...为eth0、1...
原来在RHEL6中引入了一种一致性网络设备接口命名的方法(Consistent Network Device Naming),传统的,Linux中的网络接口命名是按照eth[0123...],但是这些名字不能实际的表示出网卡的特征,一致性网络设备命名法根据网卡的物理位置,是否是集成的还是在PCI插槽中来命名,通过这名称,网络管理员能够很清楚的知道网卡的物理位置,这种方法是依靠biosdevname程序来实现的,它按照一定的规则改变原来的eth[012..]网卡名
网卡设备 旧名称 新名称集成网卡 eth[012...] em[123...]
PCI网卡 eth[012...] p[插槽数]p[网卡号]
虚拟网卡 eth[012...] p[插槽数]p[网卡号_虚拟接口]
第一种em1
第二种p4p1
第三种p4p4_1
当然管理员也可以继续 在/etc/udev/rules.d/70-persistent-net.rules 文件中修改网卡名
这些改变的优先级高于一致性网络命名方法
我实际测试中修改好像不管用,需要修改启动项,警用biosdevname程序
具体操作是修改/etc/default/grub文件
在GRUB_CMDLINE_LINUX一行中添加net.ifnames=0 biosdevname=0
保存文件后然后运行
grub2-mkconfig -o /boot/grub2/grub.cfg (root权限)
重新生成GRUB配置并更新内核参数
然后重启,修改/etc/udev/rules.d/70-persistent-net.rules文件即可以修改为自己想要的网卡名了
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="98:90:96:d6:d1:ee", ATTR{type}=="1", KERNEL=="eth*",
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="48:ee:0c:bb:0b:46", ATTR{type}=="1", KERNEL=="eth*",