Ubuntu 24.04更新后DNS解析失败且无法安装resolvconf的求助
Ubuntu 24.04更新后DNS解析失败且无法安装resolvconf的求助
看起来你升级到24.04后碰到了systemd-resolved相关的DNS配置故障,这种情况在版本过渡时确实偶尔会出现。我来给你一步步梳理解决办法:
第一步:临时恢复DNS解析,先解决无法安装包的死循环
现在核心问题是连不上网没法装工具,得先手动打通DNS:
- 先把无效的软链接移走备份:
sudo mv /etc/resolv.conf /etc/resolv.conf.bak - 创建一个临时的普通resolv.conf文件,手动添加公共DNS服务器:
在文件里输入:sudo nano /etc/resolv.conf
按nameserver 8.8.8.8 nameserver 8.8.4.4Ctrl+O保存,Ctrl+X退出。 - 测试一下能不能解析域名:
如果能收到回复,说明临时DNS生效了,接下来就可以处理根本问题。ping google.com
第二步:修复systemd-resolved配置(推荐的默认方案)
Ubuntu 24.04默认用systemd-resolved管理DNS,你那个stub-resolv.conf不存在,大概率是这个服务没运行:
- 先检查服务状态:
systemctl status systemd-resolved - 如果显示未运行,启动并设置开机自启:
sudo systemctl start systemd-resolved sudo systemctl enable systemd-resolved - 现在
/run/systemd/resolve/stub-resolv.conf应该已经生成了,重新创建正确的软链接:sudo ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf - 最后重启NetworkManager让配置生效:
sudo systemctl restart NetworkManager
第三步:安装resolvconf(如果你更习惯用这个工具)
如果临时DNS已经生效,你可以安装resolvconf来管理DNS配置:
sudo apt update && sudo apt install resolvconf
安装完成后,resolvconf会自动接管/etc/resolv.conf的管理,你可以编辑/etc/resolvconf/resolv.conf.d/base添加自定义DNS,修改后运行sudo resolvconf -u让配置生效。
额外检查:WiFi的DHCP配置
因为你用的是WiFi连接,也可以排查下是否DHCP没获取到正确的DNS:
- 查看当前WiFi接口的DNS信息(把
wlan0换成你的无线网卡名,从ip a结果里找):nmcli dev show wlan0 | grep IP4.DNS - 如果结果为空,你可以在图形界面的WiFi设置里,找到当前连接的网络,进入IPv4设置,把DNS改为手动模式,输入
8.8.8.8,8.8.4.4,保存后重新连接WiFi。
备注:内容来源于stack exchange,提问作者meatlocker




