【运维】Ubuntu apt 更新失败?Temporary failure resolving ‘cn.archive.ubuntu.com‘ 问题
Ubuntu apt 更新失败?Temporary failure resolving ‘cn.archive.ubuntu.com’ 问题
在使用 Ubuntu 时,你是否遇到过这样一个烦人的错误:
Temporary failure resolving ‘cn.archive.ubuntu.com’
如果你也踩坑了,别慌!这篇文章手把手带你搞懂原因并彻底解决,避免反复踩坑。
💡 先说重点:这个错误不是因为源坏了,而是你的 DNS 解析失败了,系统无法正确将域名解析成 IP 地址,自然也就连不上了。
🔥 1. 问题原因总结
一般出现这个错误,主要有两个可能:
- 临时性网络故障(比如 Wi-Fi 掉线、代理设置问题)
- 系统 DNS 配置错误(最常见)
所以,修复思路也很简单:
先确认网络通不通,再排查 DNS 设置 ✅
🔥 2. 第一步:检查基础网络连通性
先测试一下,你的 Ubuntu 还能不能访问外网的 IP。
在终端输入:
ping 8.8.8.8
- 如果 能 ping 通 8.8.8.8,但访问
cn.archive.ubuntu.com
失败,那么基本可以确定是 DNS 配置问题。 - 如果 连 8.8.8.8 都 ping 不通,那是网络本身出问题了,比如网线、Wi-Fi、代理/VPN 设置有问题,需要先排查网络。
✅ 小总结:
能 ping 通 IP,却连不上域名 → DNS 问题。
IP 都 ping 不通 → 网络问题。
🔥 3. 第二步:临时修改 DNS 服务器
DNS 配置错了的话,我们可以临时指定稳定的 DNS,比如:
- Google Public DNS:8.8.8.8
- 阿里云 DNS:223.5.5.5
步骤如下:
- 编辑
/etc/resolv.conf
文件:
sudo nano /etc/resolv.conf
- 把里面的内容改成下面这样(如果之前有内容,建议先备份一下):
nameserver 8.8.8.8
nameserver 223.5.5.5
- 保存并退出(Nano 编辑器按
Ctrl+O
保存,Ctrl+X
退出)。
💬 注意:
直接修改 /etc/resolv.conf
是临时生效的,有些系统重启后会被覆盖(后面教你怎么永久生效)。
🔥 4. 第三步:重新更新软件源
DNS 配好之后,再重新执行 apt 更新命令:
sudo apt update
然后你需要安装的软件,比如:
sudo apt install postgresql-client
通常此时就可以正常拉取和安装了!
🔥 5. (可选)让 DNS 配置永久生效
如果你的 /etc/resolv.conf
总是被重置,可以按以下方法做永久修改。
方法一:配置 systemd-resolved
- 编辑 systemd-resolved 配置文件:
sudo nano /etc/systemd/resolved.conf
- 找到
[Resolve]
部分,取消注释并修改为:
[Resolve]
DNS=8.8.8.8 223.5.5.5
FallbackDNS=114.114.114.114
- 保存退出后,重启 systemd-resolved 服务:
sudo systemctl restart systemd-resolved
这样设置就能在每次开机时自动生效了!
🔥 附加:顺便提升 apt 下载速度?(换国内源)
如果你的系统默认用的是海外源(比如 cn.archive.ubuntu.com),速度很慢,甚至容易超时。
可以考虑换成阿里云、中科大、清华大学等国内镜像站,大大提升 apt update 的速度!
(如果你需要的话,留言告诉我,我可以单独出一篇教程来手把手教你怎么换源 ⚡)
✅ 总结一下
状态 | 说明 | 处理方式 |
---|---|---|
ping 8.8.8.8 成功 | DNS 问题 | 修改 /etc/resolv.conf |
ping 8.8.8.8 失败 | 网络故障 | 检查网络设置,重连网络 |
DNS 临时生效但重启失效 | /etc/resolv.conf 被覆盖 | 配置 systemd-resolved |