制作RHEL/Rocky Linux 9虚拟化模板时重置网络配置的疑问
制作RHEL/Rocky Linux 9虚拟化模板时重置网络配置的疑问
哥们,我太懂你这种困惑了——明明按照教程清掉了网络配置里的UUID和HWADDR,结果新VM起来后nmcli显示还是旧UUID,连nmconnection文件里都没生成新的,这搁谁都会纳闷是不是哪里漏了步骤。
咱们先拆解下问题出在哪:你用sed删掉/etc/NetworkManager/system-connections/*.nmconnection里的UUID和HWADDR这步没问题,但NetworkManager的运行状态缓存没清,而且你没让它重新加载修改后的配置就关机做模板了。
当你在模板VM里修改完nmconnection文件后,NetworkManager还停留在之前的运行状态里,它会把连接的UUID等信息存在/var/lib/NetworkManager/的缓存文件里,新VM启动时直接读取了这份缓存,自然就复用了旧UUID。
给你一套更彻底的模板网络重置步骤,亲测在RHEL/Rocky 9上管用:
- 先执行你原来的sed命令清理配置:
/bin/sed -i '/^\(HWADDR\|UUID\)=/Id' /etc/NetworkManager/system-connections/*nmconnection
- 让NetworkManager重新加载修改后的配置:
nmcli connection reload
- 禁用当前激活的网络连接,避免状态残留:
nmcli connection down lan # 这里的lan是你连接的名称,根据实际情况修改
- 清理NetworkManager的状态缓存:
rm -f /var/lib/NetworkManager/NetworkManager.state
- 最后关机,把VM转成模板:
shutdown -h now
另外,如果你想更省心,甚至可以直接删掉所有nmconnection配置文件,让新VM启动时NetworkManager自动检测网卡并生成全新的连接配置:
rm -f /etc/NetworkManager/system-connections/*nmconnection nmcli connection reload shutdown -h now
这样新VM启动后,NetworkManager会自动创建适配当前网卡MAC的连接,UUID也是全新的,完全不会有旧模板的残留。
备注:内容来源于stack exchange,提问作者de-diac




