如果您在Ubuntu22.04及更高版本中使用PPA或添加外部存储库,您可能会看到此消息:W:https://packagecloud.io/slacktechnologies/slack/debian/dists/jessie/InRelease:Keyisstoredinlegacytrusted.gpgkeyring(/etc/apt/trusted.gpg),详见apt-key(8)中的弃用部分。ubuntukeyisstoredlegacyFirst,这不是错误,而是警告消息。警告不会导致程序停止工作。即使您在更新过程中看到此警告信息,您也可以继续升级您的系统。如果您不想看到此警告消息,可以采取一些手动步骤来摆脱它。有两种方法;正确的方式和快速而不优雅的方式。仔细阅读这两种方法,看看您喜欢哪一种。方法1:导入密钥(正确但复杂的方法)首先,列出添加到系统中的所有GPG密钥。sudoapt-keylist这将显示存储在系统中的大量密钥列表。您在这里要做的是查找与警告消息关联的密钥。abhishek@itsfoss:~$sudoapt-keylist[sudo]abhishek的密码:警告:apt-key已弃用。在trusted.gpg.d中管理密钥环文件(参见apt-key(8))./etc/apt/trusted.gpg--------------------pubrsa40962014-01-13[SCEA][已过期:2019-01-12]418A7F2FB0E1E6E7EABF6FE8C2E73424D59097ABuid[已过期]packagecloudops(生产密钥)pubrsa40962016-02-18[SCEA]DB085A08CA13B8ACB917E0F6D938EC0D038651BDuid[未知]https://packagecloud.io/slacktechnologies/slack(https://packagecloud.io/docs#gpg_signing)subrsa40962016-02-18[SEA]/etc/apt/trusted.gpg.d/audio-recorder-ubuntu-ppa.gpg--------------------------------------------------pubrsa40962015-08-30[SC]42EF41ED9813B713D4F1F06D5CF12638ACF9669Fuid[未知]LaunchpadPPA对于团队录音机/etc/apt/trusted.gpg.d/danielrichter2007-ubuntu-grub-customizer.gpg--------------------------------------------------------------pubrsa10242010-10-08[SC]59DAD276B942642B1BBD0EACA8AA1FAA3F055C03你打算怎么做?仔细阅读此信息:W:https://packagecloud.io/slacktechnologies/slack/debian/dists/jessie/InRelease:Keyisstoredinlegacy在我的例子中,存储库是packagecloud、slacktechnologies和其他关键字显示在apt-keys列表输出的顶部。在您的情况下,您可能需要滚动一下。在这种罕见的情况下,Slack添加了一个带有两个GPG密钥的外部存储库。其中一个已过时,我将忽略它。你可能不会有这种情况。您应该在pub:/etc/apt/trusted.gpg之后看到该行的最后8个字符(不包括空格)--------------------pubrsa40962014-01-13[SCEA][已过期:2019-01-12]418A7F2FB0E1E6E7EABF6FE8C2E73424D59097ABuid[已过期]packagecloudops(生产密钥)pubrsa409[SCEA]DB085A08CA13B8ACB917E0F6D938EC0D038651BDuid[unknown]https://packagecloud.io/slacktechnologies/slack(https://packagecloud.io/docs#gpg_signing)因此,来自在行DB085A08CA13B8ACB917E0F6D938EC0D038651BD,我将最后8个字符038651BD提取出来,去掉空格,用它导入/etc/apt/trusted.gpg.d目录下专用文件中的GPG密钥:sudoapt-keyexport038651BD|sudogpg--dearmour-o/etc/apt/trusted.gpg.d/slack.gpg我在这里创建了一个新文件slack.gpg,以防你没有注意到它。我将其命名为slack.gpg,因为它与我之前安装的Slack应用程序相关。文件名并不重要,但它有助于识别。如果命令成功运行,您将看不到任何消息。您可以通过检查新创建的gpg文件是否存在来验证。将gpg密钥导入受信任的ubuntu再次运行更新,现在您应该不会再看到警告消息。方法2:复制到trusted.gpd.d目录(快速且不优雅的方法)如果您对手动执行上述操作感到不自在,则可以忽略此警告消息。我的意思是,忽略它始终是一种选择。另一种选择是将/etc/apt/trusted.gpg文件复制到/etc/apt/trusted.gpg.d目录。毕竟,Ubuntu只是抱怨它需要/etc/apt/trusted.gpg.d目录中的GPG密钥。您仍然必须使用终端。打开它并使用以下命令:sudocp/etc/apt/trusted.gpg/etc/apt/trusted.gpg.d现在,如果您运行更新,您将不再看到“密钥存储在旧版trusted.gpg密钥环中”警告信息。修复apt密钥存储遗留问题的快速肮脏方法总结我曾经写过一篇关于弃用apt-key的详细文章。显然,那篇文章让一些读者感到困惑,所以我写这篇文章是为了让他们立即采取措施来摆脱那条信息。正如我之前所说,这是一条警告消息,现在可以忽略。解决这个问题的责任在于外部软件开发人员和Ubuntu开发人员。外部软件开发人员应确保他们的GPG密钥不再添加到/etc/apt/trusted.gpg文件中。最终用户不应该因为他们的懒惰而受苦。那么,您使用哪种方法摆脱了“密钥存储在旧版中”的警告消息?第一种方法还是第二种方法?