在CentOS7.x或RedHat7.x上,网卡命名规则变成了默认,既自动基于固件、拓扑结构和位置信息来确定。这样一来虽然有好处,但也会影响操作,因为新的命名规则比之前的难以阅读。如果想修改,可以按照如下方法:
1、系统安装完后,网卡信息可能如下:
1:lo: <LOOPBACK,UP,LOWER_UP> mtu 65536qdisc noqueue state UNKNOWN
link/loopback00:00:00:00:00:00 brd00:00:00:00:00:00
inet 127.0.0.1/8 scopehost lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2:eno16777736:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_faststate UP qlen1000
link/ether00:0c:29:8b:e3:0f brdff:ff:ff:ff:ff:ff
inet 10.0.0.20/24 brd10.0.0.255 scopeglobal eno16777736
valid_lft forever preferred_lft forever
inet6fe80::20c:29ff:fe8b:e30f/64 scopelink
valid_lft forever preferred_lft forever
2、修改网卡配置文件,修改NAME为eth0,并将DEVICE行删除
[root@test~]# cd/etc/sysconfig/network-scripts/
root@test~]# vim ifcfg-eno16777736
3、修改该配置文件名
[root@testnetwork-scripts]# mv ifcfg-eno16777736ifcfg-eth0
[root@testnetwork-scripts]# cd
4、修改/etc/sysconfig/grub,添加net.ifnames=0 biosdevname=0
[root@test~]# vim /etc/sysconfig/grub
修改前内容:
GRUB_TIMEOUT=5
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=autorhgb quiet"
GRUB_DISABLE_RECOVERY="true"
修改后内容:
GRUB_TIMEOUT=5
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=autonet.ifnames=0 biosdevname=0 rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
5、重新生成grub配置并更新内核参数
[root@test~]# grub2-mkconfig -o/boot/grub2/grub.cfg
此时重启并查看即可发现已经修改成功。
6、创建规则
当有多个网卡,并且想要控制器设备名,而不是让内核以自己的方式命名,需要修改下规则。
[root@test~]# vim/etc/udev/rules.d/70-persistent-ipoib.rules
SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR(address)=="00:0c:29:8b:e3:0f",ATTR(type)=="1",
KERNEL=="eth*",NAME="eth0"
重启系统即可。