Linux之手把手教会修改网卡名称
目录
一、为什么要修改网卡名称
在早期的linux系统中,网卡名称常常以传统的命名方式eth0、eth1、eht2来命名。
例如,CentOS 6之前,网络接口使用连续号码命名:eth0、eth1等,但是,如果再新增硬件设备,也有可能会被识别成 eth0,eth1等。
CentOS 7开始,改变了网卡设备命名规则,基于硬件生成网卡名,例如 ens33,ens160 等,可以保证网卡名称稳定且唯一,但是在批量环境中,没办法统一。
为了进行批量管理,以及脚本的通用性等方面的考虑。在某些情况下,需要将新的网卡命名规则改成传统的命名方式,即将 ens33,ens160等名称改为eth0, eth1 这样。
下面将为大家介绍Redhat系列以及Ubuntu中如何修改网卡名称。
二、Redhat系列
将网卡名称由ens160改为eth0:
步骤1:修改/etc/default/grub配置文件,在GRUB_CMDLINE_LINUX这行后面加上net.ifnames=0。增加这个参数的作用是禁用操作系统基于硬件生成网卡名称这种规则,来使用传统的网卡名称来命名。
#使用vim工具编辑grub文件内容
vim /etc/default/grub
步骤2:修改/etc/sysconfig/network-scripts下的网卡配置文件。这些文件的命名一般由 ifcfg- + “网卡名称”组成的。所以我们需要将文件ifcfg-ens160重命名为ifcfg-eth0,另外,还需要将ifcfg-ens160中与ens160有关的信息改为eth0。
#切换到network-scripts目录下
cd /etc//etc/sysconfig/network-scripts
#将ifcfg-ens160重命名为ifcfg-eth0
mv ifcfg-ens160 ifcfg-eth0
#将ifcfg-ens160中有关ens160有关的信息(name和device)改为eth0
vim ifcfg-eth0
步骤3:判断操作系统是基于UEFI模式引导的系统还是基于BIOS引导的系统。
#输入此命令判断系统是基于哪个模式引导的
#这个命令翻译一下就是:判断/sys/firmware/efi这个文件是否存在,若存在属于UEFI,反之输出BIOS
#基于UEFI模式引导的系统,在/sys/firmware/下会有一个efi文件
[ -d /sys/firmware/efi ] && echo UEFI || echo BIOS
步骤4:不同的模式引导的系统使用不同的命令重新读取配置文件。
#基于UEFI模式引导的系统
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
#基于BIOS模式引导的系统
grub2-mkconfig -o /boot/grub2/grub.cfg
步骤5:reboot重启服务器
重启完成后就可以通过ip a命令来查看网卡的名称了
三、Ubuntu
将网卡名称有ens33修改为eth0:
步骤1:修改/etc/default/grub配置文件,在GRUB_CMDLINE_LINUX这行中加上net.ifnames=0。
vim /etc/default/grub
步骤2:修改/etc/netplan/00-installer-config.yaml网卡配置文件,将ens33改为eth0。
vim /etc/netplan/00-installer-config.yaml
步骤3和4参考Redhat。
grub2-mkconfig -o /etc/grub2.cfg
步骤5:reboot重新启动。
四、临时修改网卡名称
#将网卡关闭
ip link set ens160 down
#临时更改网卡名称,服务器重启后网卡名称会还原
ip link set ens160 name eth0
#将网卡打开
ip link set eth0 up