sudo apt-get update报错问题及解决过程
一、问题现象
在执行 sudo apt-get update 命令时,终端出现一系列报错信息:
1、从 http://archive.ubuntu.com/ubuntu 相关多个仓库(如 xenial InRelease、xenial-security InRelease、xenial-updates InRelease、xenial-proposed InRelease、xenial-backports InRelease)更新时,均报错 Err,错误详情为:
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32。
同时还提示
E: The repository '具体仓库名(如 http://archive.ubuntu.com/ubuntu xenial InRelease)' is not signed.
以及
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
表明这些仓库由于签名无法验证且未签名,默认禁止更新。
2、对于 https://mirrors.aliyun.com/docker-ce/linux/ubuntu/dists/jammy/InRelease 仓库,提示
W: https://mirrors.aliyun.com/docker-ce/linux/ubuntu/dists/jammy/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
显示其密钥存储在旧的 trusted.gpg 密钥环,虽此为提示信息,但也涉及密钥相关问题。
二、问题分析
- 签名验证失败:系统缺少对应公钥来验证
http://archive.ubuntu.com/ubuntu系列仓库软件包列表签名,安全机制下,apt禁止从这些仓库更新。 - 仓库未签名:相关报错仓库未恰当签名,不符安全更新要求致更新禁用。
- 密钥存储提示:
https://mirrors.aliyun.com/docker-ce/linux/ubuntu仓库密钥存储方式旧,暂不影响核心更新报错,但也是潜在隐患需留意。
三、解决办法
- 添加缺失公钥
打开终端,执行以下命令:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
目的:从 `keyserver.ubuntu.com` 服务器获取并添加缺失公钥,解决签名验证基础问题。
注意:确保网络连接正常以便顺利获取公钥,若执行报错,检查网络设置或服务器是否可达。
- 检查仓库配置(可选)
查看 /etc/apt/sources.list 以及 /etc/apt/sources.list.d/ 目录下文件:
- 使用
cat或less命令查看,如cat /etc/apt/sources.list,检查仓库地址是否准确,有无拼写错误或过时配置。 - 重点关注涉及
http://archive.ubuntu.com/ubuntu及相关报错仓库配置行。
若发现问题:
- 对于错误仓库地址,直接编辑修改,使用文本编辑器(如
nano或vim),如sudo nano /etc/apt/sources.list,修改完保存退出。 - 对于不需要仓库,可删除对应配置行,同样用文本编辑器操作,注意备份原文件以防误操作。
四、后续操作
完成上述解决办法步骤后,重新执行 sudo apt-get update 命令:
- 若更新过程顺利,无报错,显示
Reading package lists... Done且无Err、W类错误提示,说明问题解决,系统可正常更新软件包列表,后续能按需安装、升级软件。 - 若仍有报错,仔细记录新错误信息,重复分析问题、寻找解决办法流程,可能需进一步排查系统软件源、网络环境或其他潜在因素。
五、总结
以上笔记详细记录 sudo apt-get update 报错处理全程,方便后续遇到类似问题快速查阅、解决。
这些仅为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Linux 7.4上安装配置Oracle 11.2.0.4图文教程
本文通过图文并茂的形式给大家介绍了Linux 7.4上安装配置Oracle 11.2.0.4的方法,非常不错,具有参考借鉴价值,需要的朋友参考下吧2017-12-12
在 CentOS 8/RHEL 8 上安装和使用 Cockpit的方法
Cockpit 是一个基于 Web 的服务器管理工具,可用于 CentOS 和 RHEL 系统。最近发布的 CentOS 8 和 RHEL 8,其中 cockpit 是默认的服务器管理工具。这篇文章主要介绍了在 CentOS 8/RHEL 8 上安装和使用 Cockpit的方法,需要的朋友可以参考下2019-10-10
修改wamp的apache默认端口80为8088以及www目录
这篇文章主要介绍了修改wamp的apache默认端口80为8088以及www目录为workphp,需要的朋友可以参考下2014-03-03


最新评论