You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行sudo apt-get update报错,Ubuntu 16.04下如何解决?

解决Ubuntu 16.04中sudo apt-get update报错的常见方案

Ubuntu 16.04执行sudo apt-get update报错是个挺常见的问题,毕竟这个版本已经在2021年结束了官方支持,加上网络、源配置、缓存这些都可能出问题。我给你整理了几种最常见的解决场景,你可以挨个试试:

1. 先排查网络连接问题

update命令本质是从远程软件源拉取最新的包信息,所以第一步得确保你的网络能正常访问这些源服务器。你可以先执行这个命令测试:

ping archive.ubuntu.com

如果丢包严重或者完全不通,那得先搞定你的网络——比如检查路由器是否正常、有没有设置代理(如果有代理,得确保apt能识别到,比如通过export http_proxy=http://你的代理地址:端口临时配置)。

2. 修复因系统EOL导致的源失效问题

因为Ubuntu 16.04已经停止官方支持,原来默认的archive.ubuntu.com和security.ubuntu.com源地址已经不再提供服务了,必须切换到旧版本归档源。步骤如下:

  1. 先备份原来的源配置文件,防止改错了没法恢复:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
  1. 编辑源配置文件:
sudo nano /etc/apt/sources.list
  1. 把文件里所有的archive.ubuntu.com和security.ubuntu.com替换成old-releases.ubuntu.com。比如原来的行:

deb http://archive.ubuntu.com/ubuntu xenial main restricted
要改成:
deb http://old-releases.ubuntu.com/ubuntu xenial main restricted

  1. 保存并退出编辑器(按Ctrl+O,回车确认保存,再按Ctrl+X退出)
  2. 重新执行update命令:
sudo apt-get update

3. 清理损坏的本地缓存

如果源没问题,但还是报错说“无法找到文件”或者“缓存损坏”,可以先清理本地缓存再重新拉取:

sudo apt clean
sudo apt-get update --fix-missing

apt clean会删除本地所有下载的包缓存,--fix-missing参数会让apt自动修复缺失的包信息文件。

4. 解决GPG密钥验证错误

要是你看到类似NO_PUBKEY XXXXXXXX的错误提示,说明系统缺少对应软件源的验证密钥,直接导入密钥即可:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys XXXXXXXX

把命令里的XXXXXXXX换成你报错信息里的密钥串(比如NO_PUBKEY 1234ABCD,就换成1234ABCD)。

5. 检查源文件的权限

偶尔也会遇到因权限不足导致的报错,你可以先检查源配置文件的权限:

ls -l /etc/apt/sources.list

正常情况下,文件所有者应该是root,权限是-rw-r--r--(也就是644)。如果不对,执行下面的命令修改:

sudo chown root:root /etc/apt/sources.list
sudo chmod 644 /etc/apt/sources.list

如果上面的方法都没解决,你可以把具体的报错信息贴出来,我再帮你针对性分析~

内容的提问来源于stack exchange,提问作者Monojit Sarkar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:21:45