如果您在 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.
首先第一件事。这不是错误,而是警告消息。警告不会停止该过程。即使您在更新过程中看到此警告消息,您也可以继续升级系统。
有两种方法;正确的方法和快速而肮脏的方法。阅读这两种方法,看看您对哪一种感到满意。
方法一:导入密钥【正确但复杂的方法】
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 密钥环中”问题
原文地址:https://blog.csdn.net/sinat_30603081/article/details/134661506
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_27796.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!