树莓派4 openSUSE系统重启NetworkManager后配置被覆写为404内容问题
树莓派4 openSUSE Tumbleweed JeOS NetworkManager启动失败解决方案
问题根因说明
报错信息:
Oct 31 16:49:37 suse-server NetworkManager[2966]: <warn> [1635698977.7227] config: Default config file invalid: /etc/NetworkManager/NetworkManager.conf: Key file contains line “404: Not Found” which is not a key-value pair, group, or comment该问题由系统预置的NetworkManager配置拉取脚本触发,脚本尝试拉取远程模板失败后直接将404响应内容写入配置文件,导致配置格式非法,服务启动失败。
修复步骤
- 第一步:安装文件变更监控工具,定位覆写进程
执行命令安装工具:zypper install -y inotify-tools
开启配置文件监控:inotifywait -m /etc/NetworkManager/NetworkManager.conf -e modify
新开终端执行systemctl restart NetworkManager触发复现,即可从监控输出中得到触发配置修改的进程PID与进程名。 - 第二步:写入合法的默认NetworkManager配置
先停止NetworkManager服务:systemctl stop NetworkManager
清空非法配置,写入基础合法配置:cat > /etc/NetworkManager/NetworkManager.conf << EOF [main] plugins=keyfile dns=default no-auto-default=* [logging] level=WARN domains=DEFAULT EOF - 第三步:临时锁定配置文件防止被覆写
执行命令给配置文件加不可修改属性:chattr +i /etc/NetworkManager/NetworkManager.conf - 第四步:禁用wicked,启动NetworkManager服务
关闭并禁用默认的wicked网络管理服务:systemctl stop wicked && systemctl disable --now wicked.service wickedd.service wickedd-nanny.service
启动NetworkManager并设置开机自启:systemctl enable --now NetworkManager - 第五步:永久修复(可选)
若加锁后服务运行异常,可根据第一步定位到的进程找到对应的拉取脚本(通常位于/etc/NetworkManager/dispatcher.d/、/usr/lib/NetworkManager/或/usr/sbin/目录下),注释/删除其中拉取远程内容写入配置文件的逻辑即可,之后可执行chattr -i /etc/NetworkManager/NetworkManager.conf解除文件锁定。
验证方式
执行nmcli device status,能正常列出网卡设备即说明NetworkManager运行正常,可正常部署HASS.IO。
内容的提问来源于stack exchange,提问作者kol
相关产品推荐
相关产品推荐

