Ubuntu 22.04 GPG错误:无法验证以下签名
Ubuntu 22.04 GPG 错误:无法验证以下签名
是尝试将第三方软件包存储库包含到 apt
软件包管理器时最常见的错误。 GPG 错误应该被视为针对来自未知来源的潜在软件包安装的警告。因此,GPG错误消息提示用户验证并手动导入属于相关软件包开发者的第三方签名。
在本教程中,您将了解如何纠正此错误,以便您可以在 Ubuntu 22.04 Jammy Jellyfish 上从预期的 PPA 存储库安装该软件。
在本教程中您将学习:
如何导入公钥签名
从 PPA 存储库安装软件包时如何出现 GPG 错误
如何导入GPG公钥签名分步说明
当您收到 GPG 错误消息时,第一步是记下公钥 (NO_PUBKEY)。例子:
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 9578539176BAFBC6 Reading package lists... Done W: GPG error: http://ppa.launchpad.net/peek-developers/daily/ubuntu jammy InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 9578539176BAFBC6
从上面的输出中我们可以看到缺少的公钥签名是
9578539176BAFBC6
。使用从 GPG 错误中检索到的密钥,通过 apt-key 命令将其导入到 Ubuntu 22.04 系统中。例子:
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 9578539176BAFBC6 Executing: /tmp/apt-key-gpghome.fnm4L3G3iP/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 9578539176BAFBC6 gpg: key 9578539176BAFBC6: public key "Launchpad PPA for Peek Developers" imported gpg: Total number processed: 1 gpg: imported: 1
通过执行 apt-key list 命令列出当前导入的所有密钥,确认公钥已导入:
$ apt-key list /etc/apt/trusted.gpg -------------------- pub rsa4096 2017-02-14 [SC] 8C95 3129 9E7D F2DC F681 B499 9578 5391 76BA FBC6 uid [ unknown] Launchpad PPA for Peek Developers /etc/apt/trusted.gpg.d/ubuntu-keyring-2012-archive.gpg ------------------------------------------------------ ...