sudo apt-get update 报错及解决

sudo apt-get update报错及解决工作笔记

一、问题现象

在执行 sudo apt-get update 命令时,终端出现一系列报错信息:

  1. http://archive.ubuntu.com/ubuntu 相关多个仓库(如 xenial InReleasexenial-security InReleasexenial-updates InReleasexenial-proposed InReleasexenial-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 密钥环,虽此为提示信息,但也涉及密钥相关问题。

二、问题分析

  1. 签名验证失败:系统缺少对应公钥来验证 http://archive.ubuntu.com/ubuntu 系列仓库软件包列表签名,安全机制下,apt 禁止从这些仓库更新。
  2. 仓库未签名:相关报错仓库未恰当签名,不符安全更新要求致更新禁用。
  3. 密钥存储提示https://mirrors.aliyun.com/docker-ce/linux/ubuntu 仓库密钥存储方式旧,暂不影响核心更新报错,但也是潜在隐患需留意。

三、解决办法

  1. 添加缺失公钥
    • 打开终端,执行以下命令:
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` 服务器获取并添加缺失公钥,解决签名验证基础问题。
- 注意:确保网络连接正常以便顺利获取公钥,若执行报错,检查网络设置或服务器是否可达。
  1. 检查仓库配置(可选)
    • 查看 /etc/apt/sources.list 以及 /etc/apt/sources.list.d/ 目录下文件:
      • 使用 catless 命令查看,如 cat /etc/apt/sources.list,检查仓库地址是否准确,有无拼写错误或过时配置。
      • 重点关注涉及 http://archive.ubuntu.com/ubuntu 及相关报错仓库配置行。
    • 若发现问题:
      • 对于错误仓库地址,直接编辑修改,使用文本编辑器(如 nanovim),如 sudo nano /etc/apt/sources.list,修改完保存退出。
      • 对于不需要仓库,可删除对应配置行,同样用文本编辑器操作,注意备份原文件以防误操作。

四、后续操作

完成上述解决办法步骤后,重新执行 sudo apt-get update 命令:

  1. 若更新过程顺利,无报错,显示 Reading package lists... Done 且无 ErrW 类错误提示,说明问题解决,系统可正常更新软件包列表,后续能按需安装、升级软件。
  2. 若仍有报错,仔细记录新错误信息,重复分析问题、寻找解决办法流程,可能需进一步排查系统软件源、网络环境或其他潜在因素。

以上笔记详细记录 sudo apt-get update 报错处理全程,方便后续遇到类似问题快速查阅、解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/890165.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

简单工厂模式和策略模式的异同

文章目录 简单工厂模式和策略模式的异同相同点:不同点:目的:结构: C 代码示例简单工厂模式示例(以创建图形对象为例)策略模式示例(以计算价格折扣策略为例)UML区别 简单工厂模式和策…

leetcode 3285 找到稳定山的下标

3285. 找到稳定山的下标 已解答 简单 相关标签 相关企业 有 n 座山排成一列,每座山都有一个高度。给你一个整数数组 height ,其中 height[i] 表示第 i 座山的高度,再给你一个整数 threshold 。 对于下标不为 0 的一座山,如果…

Unity动态读取外部图片转Texture2D,内存过大问题解决方案

问题描述 加载原始图片2.63M的图片,分辨率为3023*4032,占用内存108.5M 加载原始图片12.6 M的图片,分辨率为6000*8000,占用内存427.2M 太恐怖了吧 解决方案 1.加载完图片,等比缩放,宽高改为1024或者512以下 1024占用5.2M,512占用1.3M,相比小了很多 2.原始Texture2…

linux-----进程及基本操作

进程的基本概念 定义:在Linux系统中,进程是正在执行的一个程序实例,它是资源分配和调度的基本单位。每个进程都有自己独立的地址空间、数据段、代码段、栈以及一组系统资源(如文件描述符、内存等)。进程的组成部分&am…

ArkTs组件的学习

一. AlphabetIndexer 可以与容器组件联动用于按逻辑结构快速定位容器显示区域的组件 参数名类型必填说明arrayValueArray<string>是字母索引字符串数组&#xff0c;不可设置为空selectednumber是初始选中项索引值若超出索引值范围则取默认值0 class Lxr{tImg:Resource…

cusolver SP 与 cuSPARSE 函数库的关系

NVIDIA 提供的 cuSPARSE 和 cuSOLVER 函数库都是用于处理稀疏矩阵的高性能计算库&#xff0c;但它们的功能和用途有所不同。以下是这两个库的关系和各自的功能概述&#xff1a; 1. cuSPARSE 函数库 定义&#xff1a;cuSPARSE 是 NVIDIA 的一个库&#xff0c;专门用于稀疏矩阵的…

裸金属服务器和传统服务器的区别

本文将来探讨一下裸金属服务器与传统服务器两者之间的区别&#xff0c;并且讲解一下裸金属服务器和传统服务器各自的优势都有哪些&#xff01; 首先&#xff0c;裸金属服务器是一种没有虚拟化层的服务器架构&#xff0c;用户能够直接访问和管理服务器的物理资源&#xff1b;而传…

51c自动驾驶~合集42

我自己的原文哦~ https://blog.51cto.com/whaosoft/12888355 #DriveMM 六大数据集全部SOTA&#xff01;最新DriveMM&#xff1a;自动驾驶一体化多模态大模型&#xff08;美团&中山大学&#xff09; 近年来&#xff0c;视觉-语言数据和模型在自动驾驶领域引起了广泛关注…

Unity3D实现接口类的应用例子

系列文章目录 unity工具 文章目录 系列文章目录👉前言👉一、效果如下👉二、使用步骤👉2-1、创建接口👉2-2、创建具体的可交互物体类 Door(门,实现 IInteractable 接口)👉2-3、创建另一个具体的可交互物体类 Chest(宝箱,同样实现 IInteractable 接口)👉三、…

Linux限制root 用户的远程登录(安全要求)

前言&#xff1a;现在基本用户主机都不允许使用root来操作&#xff0c;所以本文通过创建新用户&#xff0c;并限制root用户的ssh来解决这个问题 1. 创建新账户 aingo 首先&#xff0c;使用 root 账户登录系统。 sudo useradd aingo设置 aingo 账户密码&#xff1a; sudo pa…

前端学习笔记-Vue篇-04

4 Vue中的ajax 4.1 解决开发环境Ajax跨域问题 vue脚手架配置代理 配置参考 | Vue CLI方法一&#xff1a;在vue.config.js中添加如下配置: module.exports {devServer: {proxy: http://localhost:4000} } 说明: 1.优点:配置简单&#xff0c;请求资源时直接发给前端(8080)即…

数据库 MYSQL的概念

数据库的概念 数据库是按照数据结 构来组织、存储和管理数据的系统&#xff0c;它允许用户高效地存储、检索、更新和管理数据 database&#xff1a;用来组织&#xff0c;存储&#xff0c;管理数据的仓库 数据库的管理系统&#xff1a;DBMS&#xff0c;实现对数据的有效储值&am…

【优选算法篇】位运算小课堂:从入门到精通的奇妙之旅(上篇)

文章目录 须知 &#x1f4ac; 欢迎讨论&#xff1a;如果你在学习过程中有任何问题或想法&#xff0c;欢迎在评论区留言&#xff0c;我们一起交流学习。你的支持是我继续创作的动力&#xff01; &#x1f44d; 点赞、收藏与分享&#xff1a;觉得这篇文章对你有帮助吗&#xff1…

【Linux】重启系统后开不开机(内核模块丢失问题)

问题 重启后开不开机报错如下&#xff1a; FAILED failed to start load kernel moduiles 可以看到提示module dm_mod not found 缺少了dm_mod 在内核module目录中 reboot重启可以看到这个现象&#xff1a; 可以看到重启启动磁盘&#xff0c;加载不到root 原因 dm_mod模块…

Flutter 中 Sliver 的各种装饰器介绍与使用

在 Flutter 中&#xff0c;Sliver 是一种可以在滚动视图中实现自定义效果的组件。Sliver 组件可以根据滚动位置动态改变其外观和行为。本文将介绍几种常用的 Sliver 装饰器及其使用方法。 1. SliverAppBar SliverAppBar 是一个可以随着滚动而变化的应用栏。它可以在用户向下滚…

【现代服务端架构】传统服务器 对比 Serverless

在现代开发中&#xff0c;选择合适的架构是至关重要的。两种非常常见的架构模式分别是 传统服务器架构 和 Serverless。它们各有优缺点&#xff0c;适合不同的应用场景。今天&#xff0c;我就带大家一起对比这两种架构&#xff0c;看看它们的差异&#xff0c;并且帮助你选择最适…

google 的guava 学习 基本工具类

Guava 是 Google 开发的一个 Java 核心库&#xff0c;它提供了一系列工具类&#xff0c;用于简化 Java 编程中的常见任务。以下是 Preconditions 和 Verify 两个工具类的使用示例&#xff1a; Preconditions 类 Preconditions 类提供了一组静态方法&#xff0c;用于在代码中插…

如何评估并持续优化AI呼入机器人的使用效果

如何评估并持续优化AI呼入机器人的使用效果 作者&#xff1a;开源呼叫中心FreeIPCC 随着人工智能技术的快速发展&#xff0c;AI呼入机器人在客户服务、技术支持等多个领域得到了广泛应用。这些智能系统不仅提高了工作效率&#xff0c;降低了运营成本&#xff0c;还显著改善了…

要在 C# 6.0 中连接 PostgreSQL 数据库

要在 C# 6.0 中连接 PostgreSQL 数据库&#xff0c;你可以使用 Npgsql 库。Npgsql 是一个开源的 .NET 数据提供程序&#xff0c;专门用于与 PostgreSQL 数据库进行交互。以下是详细步骤和示例代码&#xff0c;帮助你在 C# 6.0 项目中连接和操作 PostgreSQL 数据库。 步骤 1&…

搭建Tomcat(四)---Servlet容器

目录 引入 Servlet容器 一、优化MyTomcat ①先将MyTomcat的main函数搬过来&#xff1a; ②将getClass()函数搬过来 ③创建容器 ④连接ServletConfigMapping和MyTomcat 连接&#xff1a; ⑤完整的ServletConfigMapping和MyTomcat方法&#xff1a; a.ServletConfigMappin…