在 Ubuntu 18.04 服务器中,我无法通过systemd-networkd
在所有其他服务器上运行的经过验证的配置管理应用配置来重命名网络接口。
我看到的最初由配置管理设置的服务器和这台部分手动操作的机器之间的唯一区别是 Ubuntu 服务器至少从 14.04 升级,甚至可能是 12.04。
答案1
调查initrd
并与正常运行的服务器进行比较,升级 Ubuntu 后出现了两个明显的区别:
/lib/udev/rules.d/71-biosdevname.rules
这是 Ubuntu 中重命名网络接口的旧遗留问题。必须将其删除。
/etc/udev/rules.d/80-net-setup-link.rules
这是设置影子
/lib/udev/rules.d/80-net-setup-link.rules
,它(除其他外)还应用了来自的配置systemd-networkd
。它包含一条消息,表明某些设置被错误解释为 VM(实际上,这是一台裸机服务器):# This machine is most likely a virtualized guest, where the old persistent # network interface mechanism (75-persistent-net-generator.rules) did not work. # This file disables /lib/systemd/network/99-default.link to avoid # changing network interface names on upgrade. Please read # /usr/share/doc/udev/README.Debian.gz about how to migrate to the currently # supported mechanism.
该文件也必须被删除。
最终update-initramfs -u && reboot
结果是正确重命名的网络接口。