问题描述在 openEuler 系统中希望将网卡名称从 ens33、ens224 等现代命名方式修改为传统的 eth0、eth1但仅修改 GRUB 参数后网卡名称未生效。经排查系统中不存在 /etc/udev/rules.d/70-persistent-net.rules 文件说明系统由 systemd 的可预测网络接口命名机制主导。解决方案第一步修改 GRUB 内核参数使用 root 权限编辑 GRUB 配置文件vi/etc/default/grub找到 GRUB_CMDLINE_LINUX 这一行在引号内的末尾添加 net.ifnames0 biosdevname0 两个参数。修改前示例GRUB_CMDLINE_LINUXresumeUUID... rd.lvm.lv...修改后示例GRUB_CMDLINE_LINUXresumeUUID... rd.lvm.lv... net.ifnames0 biosdevname0参数说明net.ifnames0禁用基于硬件位置的可预测命名。biosdevname0禁用 BIOS 提供的设备命名。保存并退出在 vi 中按 Esc输入 :wq 回车。第二步重新生成 GRUB 配置根据系统启动方式执行对应命令BIOS 启动系统grub2-mkconfig-o/boot/grub2/grub.cfgUEFI 启动系统grub2-mkconfig-o/boot/efi/EFI/openEuler/grub.cfg第三步创建 udev 持久化规则关键步骤由于系统中不存在传统的 70-persistent-net.rules 文件需要手动创建以确保网卡按期望的名称加载。获取网卡 MAC 地址iplinkshow记下各网卡的 link/ether 后面的 MAC 地址。创建 udev 规则文件vi/etc/udev/rules.d/70-persistent-net.rules写入以下内容替换为实际 MAC 地址SUBSYSTEMnet, ACTIONadd, ATTR{address}XX:XX:XX:XX:XX:XX, NAMEeth0 SUBSYSTEMnet, ACTIONadd, ATTR{address}XX:XX:XX:XX:XX:XX, NAMEeth1重载 udev 规则并触发udevadm control --reload-rules udevadm trigger第四步重命名并修改网络配置文件进入网络配置目录cd/etc/sysconfig/network-scripts/重命名配置文件mvifcfg-ens33 ifcfg-eth0mvifcfg-ens224 ifcfg-eth1编辑配置文件确保 NAME 和 DEVICE 字段匹配新名称编辑 ifcfg-eth0viifcfg-eth0确保包含NAMEeth0 DEVICEeth0编辑 ifcfg-eth1viifcfg-eth1确保包含NAMEeth1 DEVICEeth1第五步重启系统并验证重启系统reboot重启后执行以下命令确认网卡名称是否已更改iplinkshow或ifconfig应能看到 eth0 和 eth1 已成功生效。注意事项不要仅依赖 ip link set 命令临时重命名该操作在重启后会失效。不要忽略 udev 规则文件它是导致修改无效的最常见原因。如果使用的是 NetworkManager可能需要额外执行 nmcli connection reload 来刷新连接配置。确保配置文件与设备名一致如果 ifcfg-eth0 文件中的 DEVICEeth0 与实际设备名不匹配网络服务可能无法启动。故障排查如果以上步骤完成后网卡名称仍未生效可检查以下日志获取更多信息journalctl-b或dmesg|grep-ieth