从CentOS/RHEL7起,可预见的命名规则变成了默认。这一规则,接口名称被自动基于固件,拓扑结构和位置信息来确定。现在,即使添加或移除网络设备,接口名称仍然保持固定,而无需重新枚举,和坏掉的硬件可以无缝替换。

但是这样一来,虽然有好处,但也影响了不少用户的操作,因为新的命名方案接口名称比传统的eth0相比有点难以阅读。出于习惯等一些原因,你想修改网卡名称,下面为大家介绍如何在CentOS7或RHEL7命名网络接口。

Centos7,eth0

1、系统安装完毕,可能你的网卡命名是这样的!

Centos7,eth0

2、首先,先编辑网卡的配置文件 vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 将里面的NAME项修改为eth0

Centos7,eth0

3、继续,重命名该配置文件。

Centos7,eth0

4、然后,禁用该可预测命名规则。对于这一点,你可以在启动时传递“net.ifnames=0 biosdevname=0 ”的内核参数。这是通过编辑/etc/default/grub并加入“net.ifnames=0 biosdevname=0 ”到GRUBCMDLINELINUX变量来实现的。

Centos7,eth0

5、运行命令grub2-mkconfig -o /boot/grub2/grub.cfg 来重新生成GRUB配置并更新内核参数。

Centos7,eth0

6、其实到第5步的时候,重启在ifconfig查看应该就已经生效了,根据Centos 官方WIKI的FAQ中得知,如果你有多个接口,并且想要控制其设备名,而不是让内核以它自己的方式命名,创建,/etc/udev/rules.d/XXX-net.rules规则是必要的!那么这里我们也创建好规则吧。

注意:以前系统的net规则名称是70-persistent-net.rules,这里我也按照这个名字定义规则!

Centos7,eth0

7、重启系统,验证!

Centos7,eth0

注意事项:如果Centos7系统minimal方式安装是没有ifconfig命令的,可以通过安装net-tools解决。