gpg: 无效的密钥资源 URL '[…]/home:manuelschneid3r.asc.gpg'

gpg: 无效的密钥资源 URL '[…]/home:manuelschneid3r.asc.gpg'

我正在关注官方指南安装Docker。

在步骤2添加Docker的官方GPG密钥时,我收到以下错误:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
gpg: invalid key resource URL '/tmp/apt-key-gpghome.Rcg4Lpatvi/home:manuelschneid3r.asc.gpg'
gpg: keyblock resource '(null)': General error
gpg: key 1488EB46E192A257: 1 signature not checked due to a missing key
gpg: key 3B4FE6ACC0B21F32: 3 signatures not checked due to missing keys
gpg: key D94AA3F0EFE21092: 3 signatures not checked due to missing keys
gpg: key 871920D1991BC93C: 1 signature not checked due to a missing key
gpg: Total number processed: 9
gpg:       skipped new keys: 9

我该如何解决这个问题?

答案1

可以通过以下方式修复此问题:

sudo rm "/etc/apt/trusted.gpg.d/home\:manuelschneid3r.gpg"

或者

sudo rm "/etc/apt/trusted.gpg.d/home\:manuelschneid3r.asc"

这可能是由于安装阿尔伯特发射装置, 这里有一个相关问题感谢 Sasgorilla 在评论中提出的意见

答案2

安装 MongoDB 时出现此错误。以下方法对我有用。

sudo rm /etc/apt/trusted.gpg.d/home:manuelschneid3r.gpg

答案3

请注意,此答案是本文


-- 对于过期的密钥,你能做的不多,只能获取一个新的有效密钥。这似乎很容易,但仍有一些注意事项。

请注意,过去曾分发过多个密钥:全局密钥和每个分发密钥。过去推荐的代码片段也将密钥放在不同的位置(/etc/apt/trusted.gpg 和 /etc/apt/trusted.gpg.d/[…])。

本教程将尝试修复所有可能的问题并使 apt 重新运行。

1. 嵌入按键/etc/apt/trusted.gpg

使用apt-key del <id>删除密钥。使用 查找 repo home:manuelschneid3r 的 id apt-key list

# apt-key list
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
/etc/apt/trusted.gpg
--------------------
pub   rsa2048 2017-10-27 [SC] [expired: 2022-03-05]
      A4B8 3CD0 5FDF 5C51 7848  2D4A 1488 BLAA E192 A257
uid           [ expired] home:manuelschneid3r OBS Project <home:[email protected]>

[…]

# apt-key del "A4B8 3CD0 5FDF 5C51 7848  2D4A 1488 BLAA E192 A257"

2. 输入/etc/apt/trusted.gpg.d/

删除 中与 Albert 相关的所有键/etc/apt/trusted.gpg.d/。请注意,根据您用于安装 albert 的代码片段,这些键可能具有模糊的名称。如果您在 OBS 的官方软件中心使用代码片段,则文件很可能具有名称home_manuelschneid3r.gpg

rm /etc/apt/trusted.gpg.d/home_manuelschneid3r.gpg 
3. 来源列表

apt现在将拒绝处理错误

由于公钥不可用,无法验证以下签名:NO_PUBKEY…

如果您想保留 albert,您可以立即获取新密钥。这正是您最初安装 albert 时所做的。请访问OBS软件中心用于代码片段。

如果您不再需要 albert,请从您的源中删除存储库,方法是删除中的相关行/etc/apt/sources.list或文件/etc/apt/sources.list.d/home:manuelschneid3r.list,具体取决于您安装 albert 的方式。

您已完成。祝您使用 albert 愉快

答案4

我遇到了同样的问题。就我而言,在同一个目录 /etc/apt/trusted.gpg.d 中,我有一个 .asc 文件,只是名称不同。一旦我通过更改其扩展名重命名 .asc 文件,我就可以添加 Docker 的 gpg 密钥。

相关内容