修复debain/ Ubuntu 中的“密钥存储在旧版 trust.gpg 密钥环中”问题

如果您在 Ubuntu 22.04 及更高版本中使用 PPA 或添加外部存储库,您很可能会看到如下消息:

W: https://packagecloud.io/slacktechnologies/slack/debian/dists/jessie/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.

首先第一件事。这不是错误,而是警告消息。警告不会停止该过程。即使您在更新过程中看到此警告消息,您也可以继续升级系统。

如果您不喜欢看到警告消息,可以采取一些手动步骤来消除它。

有两种方法;正确的方法和快速而肮脏的方法。阅读这两种方法,看看您对哪一种感到满意。

方法一:导入密钥【正确但复杂的方法】

首先,列出添加到系统中的所有 GPG 密钥。

sudo apt-key list

这将显示系统中存储的大量密钥列表。您在这里要做的就是查找与警告消息关联的键。

abhishek@linux-console:~$ sudo apt-key list
[sudo] password for abhishek: 
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
/etc/apt/trusted.gpg
--------------------
pub   rsa4096 2014-01-13 [SCEA] [expired: 2019-01-12]418A 7F2F B0E1 E6E7 EABF  6FE8 C2E7 3424 D590 97AB
uid           [ expired] packagecloud ops (production key) <[email >pub   rsa4096 2016-02-18 [SCEA]DB08 5A08 CA13 B8AC B917  E0F6 D938 EC0D 0386 51BD
uid           [ unknown] https://packagecloud.io/slacktechnologies/slack (https://packagecloud.io/docs#gpg_signing) <[email >
sub   rsa4096 2016-02-18 [SEA]/etc/apt/trusted.gpg.d/audio-recorder-ubuntu-ppa.gpg
----------------------------------------------------
pub   rsa4096 2015-08-30 [SC]42EF 41ED 9813 B713 D4F1  F06D 5CF1 2638 ACF9 669F
uid           [ unknown] Launchpad PPA for Team audio-recorder/etc/apt/trusted.gpg.d/danielrichter2007-ubuntu-grub-customizer.gpg
-------------------------------------------------------------------
pub   rsa1024 2010-10-08 [SC]59DA D276 B942 642B 1BBD  0EAC A8AA 1FAA 3F05 5C03

你是怎样做的?仔细阅读该消息。

W: https://packagecloud.io/slacktechnologies/slack/debian/dists/jessie/InRelease: Key is stored in legacy

就我而言,存储库具有 packagecloud、slacktechnologies 等关键字。它显示在 apt-key 列表输出的顶部。根据您的情况,您可能需要滚动一下。

在这种罕见的情况下,Slack 添加的外部存储库有两个 GPG 密钥。其中一份已过期,我将忽略它。你可能没有这样的情况。

您应该将 pub 后面的行下的最后 8 个字符(不包括空格)添加到该行中。

/etc/apt/trusted.gpg
--------------------
pub   rsa4096 2014-01-13 [SCEA] [expired: 2019-01-12]418A 7F2F B0E1 E6E7 EABF  6FE8 C2E7 3424 D590 97AB
uid           [ expired] packagecloud ops (production key) <[email >pub   rsa4096 2016-02-18 [SCEA]DB08 5A08 CA13 B8AC B917  E0F6 D938 EC0D 0386 51BD
uid           [ unknown] https://packagecloud.io/slacktechnologies/slack (https://packagecloud.io/docs#gpg_signing) <[email >

因此,从“DB08 5A08 CA13 B8AC B917 E0F6 D938 EC0D 0386 51BD”行开始,我将取出最后8个字符“0386 51BD”,删除空格,然后用它在/etc下的专用文件中导入GPG密钥/apt/trusted.gpg.d 目录:

sudo apt-key export 038651BD | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/slack.gpg

我在这里创建了一个新文件 slack.gpg,以防您没有注意到。我将其命名为 slack.gpg,因为它与我之前安装的 Slack 应用程序相关联。文件名并不重要,但有利于识别。

如果命令成功运行,您将不会看到任何消息。您可以通过检查新创建的 gpg 文件是否存在来验证这一点。

再次运行更新,现在您不应再看到警告消息。

方法2:复制到trusted.gpd.d目录[快速而肮脏的方法]

如果您对手动执行上述所有操作感到不舒服,那么您可以忽略警告消息。我的意思是,忽略它始终是一种选择。

另一种选择是将 /etc/apt/trusted.gpg 文件复制到 /etc/apt/trusted.gpg.d 目录。毕竟,Ubuntu 只是抱怨它需要 /etc/apt/trusted.gpg.d 目录中的 GPG 密钥。

您仍然需要使用终端。打开它并使用以下命令:

sudo cp /etc/apt/trusted.gpg /etc/apt/trusted.gpg.d

现在,如果您运行更新,您将不会再看到“密钥存储在旧版 trust.gpg 密钥环中”警告消息。

结论

我写了一篇关于 apt-key 弃用的详细文章。显然,那篇文章让一些读者感到困惑,因此我写了这篇文章,为他们提供删除该消息的直接步骤。

正如我之前所说,这是一条警告消息,目前可以忽略。 “解决”这个问题的责任在于外部软件开发人员和 Ubuntu 开发人员。外部软件开发人员应确保其 GPG 密钥不再添加到 /etc/apt/trusted.gpg 文件中。

最终用户不应该因为自己的懒惰而承受痛苦。

那么,您使用哪种方法来消除“密钥存储在旧版本中”警告消息?第一个还是第二个?

 

修复 Ubuntu 中的“密钥存储在旧版 trust.gpg 密钥环中”问题

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

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

相关文章

Python3 Linux 安装教程

1. windows安装 去Python官网下载windows安装包&#xff0c;按照安装向导一直点击下一步即可&#xff0c;安装向导最好勾选Add Python3.x to PATH&#xff0c;这样就不用手动添加环境变量了。 2. linux安装 linux安装比较复杂&#xff0c;需要安装一些系统依赖&#xff0c;再…

winfrom 插件 ICSharpCode.SharpDevelop 使用 修改图标配置

1.需要安装 SharpDevelop 这个IDE对应的开发小工具 &#xff0c; 下载地址 SharpDevelop download | SourceForge.net 2.安装以及设置中文等其他的条件对应操作步骤&#xff0c;参考 SharpDevelop安装与配置 3.修改 图标配置 找到对应的 BitmapResources.resources 文件…

【C++】什么是模板?怎样使用模板?

&#x1f440;樊梓慕&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》 &#x1f31d;每一个不曾起舞的日子&#xff0c;都是对生命的辜负 目录 前言 1.函数模板 1.1函数模板概念 1.2函数…

神奇的世界(高斯核是唯一可以产生多尺度空间的线性核研究总结,两个高斯公式的联系,和推导)

放大缩小其实在现实世界中不存在。 也就是说尺度是不存在的。 比如树的长大&#xff0c;人的长大&#xff0c;从来就不是放大能解释的。 但你发现&#xff0c;这种事情存在于人的眼睛当中&#xff0c;光线真是神奇的东西。 但现实的东西是不存在放大缩小的&#xff0c;只有…

共筑关基安全防线,开源网安加入中关村华安关键信息基础设施安全保护联盟

近日&#xff0c;开源网安正式加入“中关村华安关键信息基础设施安全保护联盟”&#xff08;以下简称&#xff1a;关保联盟&#xff09;成为会员单位&#xff0c;进一步加强与行业内重要机构、企业的协同合作&#xff0c;推动关键信息基础设施安全保护领域的生态建设。 未来&am…

主机怎么通过命令行方式向虚拟机传输文件

这是几个月前遇到的问题了&#xff0c;那时候想着要记录下来&#xff0c;但后来忙忘了&#xff0c;这次想起来了&#xff0c;于是记录一下。 之前打靶场的时候需要将netcat-win32-1.12放入虚拟机的/var/www/html下&#xff0c;但是我虚拟机无法上网&#xff0c;也就是说无法直…

[每周一更]-(第74期):Docker-compose 部署Jenkins容器-英文版及错误纠错

1、前文概要 通过物理机部署Jenkins前文已经讲过&#xff08;地址&#xff1a;[Jenkins] 物理机 安装 Jenkins&#xff09;&#xff0c;也已经公司内部平稳运行若干年&#xff0c;考虑到容器化的使用场景&#xff0c;部分项目都采用容器运行&#xff0c;开始考虑部署容器化的J…

RK3568 android11 实现双路I2C触摸 --GT9xx

一&#xff0c;GT911 触摸屏简介 它的接口类型为 I2C &#xff0c;供电电压和通讯电压均为 3.3V 。这款电容触摸屏内置了上拉电阻&#xff0c;这意味着我们的开发板上与该触摸屏的接口处不需要设置上拉电阻。关于线序&#xff0c;同样是 GT911 &#xff0c;不同批次的器件都有…

U-Net及其变体在医学图像分割中的应用研究综述

U-Net及其变体在医学图像分割中的应用研究综述 论文来自&#xff1a;中国生物医学工程学报 2022 摘 要&#xff1a; 医学图像分割可以为临床诊疗和病理学研究提供可靠的依据&#xff0c;并能辅助医生对病人的病情做出准确的判断。 基于深度学习的分割网络的出现解决了传统自动分…

数据结构与算法(三)贪心算法(Java)

目录 一、简介1.1 定义1.2 基本步骤1.3 优缺点 二、经典示例2.1 选择排序2.2 背包问题 三、经典反例&#xff1a;找零钱3.1 题目3.2 解答3.3 记忆化搜索实现3.4 动态规划实现 一、简介 1.1 定义 贪心算法&#xff08;Greedy Algorithm&#xff09;&#xff0c;又名贪婪法&…

串口波形延时问题再次故障测试分析

先放电路图吧 这个延时问题测试了很多天&#xff0c;怎么感觉总是有没有想到的问题可以测试&#xff0c;总是有原件可以替换改善问题&#xff0c;再次测试了三极管的C脚波形&#xff1a; 从上到下的3个波形分别是MCU出来的波形&#xff0c;经过三极管反向的波形&#xff0c;…

2.ORB-SLAM3中如何从二进制文件中加载多地图、关键帧、地图点等数据结构

目录 1 为什么保存&加载(视觉)地图 1.1 加载多地图的主函数 1.2 加载各个地图 Atlas::PostLoad 1.3 加载关键帧及地图点Map::PostLoad 1.4 恢复地图点信息 MapPoint::PostLoad 1.5 恢复关键帧信息KeyFrame::PostLoad 1 为什么保存&加载(视觉)地图 因为我们要去做导…

抽象类的使用—模板设计模式 Java

模板设计模式 一、引入二、改进 一、引入 需求 ① 有多个类&#xff0c;完成不同的任务 job ② 要求统计得到各自完成任务的时间 ③ 请编程实现 >最容易想到的方法&#xff0c;写类&#xff0c;统计时间 AA BB中的 job 方法中是有重复的。 >改进1&#xff1a;每个类中&…

SpringBoot整合EasyExcel实现复杂Excel表格的导入导出功能

文章目录 &#x1f389;SpringBoot整合EasyExcel实现复杂Excel表格的导入&导出功能 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒&#x1f379;✨博客主页&#xff1a;IT陈寒的博客&#x1f388;该系列文章专栏&#xff1a;架构设计&#x1f4dc;其他专栏&#xff1a;Java学习路线 Jav…

集成IDE开发环境,Java开发工具IntelliJ IDEA 2023中文

IntelliJ IDEA 2023是一款功能强大的软件&#xff0c;其为程序员提供了一款先进的集成开发环境。它以智能、高效和人性化为主要特点&#xff0c;致力于提高开发人员的生产力&#xff0c;帮助程序员更快、更好地编写代码。IntelliJ IDEA 2023支持多种语言和框架&#xff0c;包括…

继承JsonSerializer+注解实现自定义数据脱敏方案

1、数据脱敏 数据脱敏是一种保护隐私数据的技术&#xff0c;通过将敏感信息转化为非敏感信息来实现对数据的保护&#xff0c;以保护敏感隐私数据的可靠性和安全性。 数据脱敏可以分为可恢复和不可恢复两类: 可恢复类可以通过一定的方式恢复成原来的敏感数据。不可恢复类则无…

【Shell】Shell基础学习

一、shell脚本 (1)第一个shell脚本 #!/bin/bash #this is a comment echo "hello world"一个shell脚本永远以“#!”开头,这是一个脚本开始的标记,它是告诉系统执行这个文件需要用某个解释器,后面的/bin/bash就是指明解释器的具体位置。 “#”开头是注释 …

P8A003-系统加固-系统管理员账户安全

【预备知识】 Administrator 原意为管理人或行政官员或遗产管理人&#xff0c;在计算机名词中&#xff0c;它的意思是系统超级管理员或超级用户。但是在Windows系统中此用户名只在安全模式中使用。 【实验步骤】 网络拓扑&#xff1a;server2008-basic windows server 2008 …

LeetCode [简单]118. 杨辉三角

给定一个非负整数 numRows&#xff0c;生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中&#xff0c;每个数是它左上方和右上方的数的和。 public class Solution {public IList<IList<int>> Generate(int numRows) {List<IList<int>> res new …

交流负载测试使用场景

交流负载测试是一种在特定环境下&#xff0c;对电力设备、汽车电子部件&#xff0c;工业自动化设备、网络设备、家电产品&#xff0c;航空航天设备以及医疗器械等产品进行测试的方法&#xff0c;该测试的目的是评估这些设备在实际运行条件下的性能和可靠性。 1电力设备测试 交…