本文档演示如何将网卡名称从em1修改为eth0
1. 关闭NetworkManager
systemctl disable NetworkManager systemctl stop NetworkManager |
2. 修改GRUB_CMDLINE_LINUX
修改 /etc/default/grub 文件,在 GRUB_CMDLINE_LINUX 行末添加:net.ifnames=0 biosdevname=0。修改后:GRUB_CMDLINE_LINUX="rd.lvm.lv=rootvg/usrlv rd.lvm.lv=rootvg/swaplv crashkernel=auto vconsole.keymap=us rd.lvm.lv=rootvg/rootlv vconsole.font=latarcyrheb-sun16 rhgb quiet net.ifnames=0 biosdevname=0"
3. 修改网卡配置
mv /etc/sysconfig/network-scripts/ifcfg-ensxxx /etc/sysconfig/network-scripts/ifcfg-eth0
修改/etc/sysconfig/network-scripts/ifcfg-eth0 配置文件中的 NAME和DEVICE 为eth0
删除udev配置:rm -f /etc/udev/rules.d/*
4. 执行grub2
先判断是BIOS启动还是UEFI的方式启动
执行
efibootmgr |
如果见到以下类似输出,则是UEFI的方式启动的,如果无输出或者报错,则为BIOS
UEFI执行:
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg |
BIOS执行:
grub2-mkconfig -o /boot/grub2/grub.cfg |
5. 重启机器
reboot |
如果重启机器后,无法访问网络或者ifconfig发现网卡名称依旧是em1,继续第6步骤
6. 启动NetworkManager
systemctl start NetworkManager
7. 检查网卡mac地址是否丢失
如果执行结果如下图,则继续第7步
nmcli connection show "Wired connection 1" | grep 802-3-ethernet.mac-address: |
如果mac地址显示 –- 则代表网卡对应的mac地址丢失,如果丢失则继续第8步骤,如果不丢失则直接第9步
nmcli connection 先看看,如果在服务器terminal(非ssh的方式) ,看到的可能是 乱码或者 ······。这时候需要确认下,OS默认语言是否设置了中文。"有线网络 1" 在这里显示不出来。通常通过ssh的方式可以显示出来
8. 重新设置网卡mac地址
根据网卡名称执行
|
eg:
# ip link show em1
2
: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu
1500
qdisc pfifo_fast state UP mode DEFAULT qlen
1000
link/ether
52
:
54
:
00
:
73
:
59
:
15
brd ff:ff:ff:ff:ff:ff
根据上面获取的mac地址继续执行
nmcli connection modify "Wired connection 1" 802 - 3 -ethernet.mac-address "上面获取的mac地址" |
eg:
nmcli connection modify "Wired connection 1" 802 - 3 -ethernet.mac-address "52:54:00:73:59:15" |
9. 再次修改网卡名称
nmcli connection modify
"Wired connection 1"
connection.
interface
-name
"新的网卡名称"
eg:
nmcli connection modify
"Wired connection 1"
connection.
interface
-name
"eth0"
10. 再次重启机器
reboot |