Linux 当添加新的源后,进行 apt-get update 后,可能会出现以下问题:
```
GPG error: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY XXXXXXXXXXXXXX
```
并且伴随出现
```
E: The repository 'http://xxxxxx‘ is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
```
基于 Debian 的发行版上的 APT 包管理器采用 GPG 的信任/安全机制。与 SSH 一样,GPG 也有公私密钥对。公钥是共享的,私钥是保密的。
每个存储库,无论是来自 Ubuntu 本身还是 PPA 或第三方存储库,都由其开发人员使用 GPG 密钥进行签名。当你将存储库添加到系统时,其开发人员的公共 GPG 密钥将添加到你系统上的受信任 GPG 密钥中。这可确保你的 Linux 系统信任来自存储库的包。
你可以使用以下命令查看系统上存储的 GPG 密钥:
```
apt-key list
```
修复 GPG 错误:无法验证以下签名
从系统上显示的错误消息中获取密钥号,现在使用 apt-key 命令将此公钥添加到你的 Ubuntu 系统:
```
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys XXXXXXXXXX
```
XXXXXXXXXX 替换为错误中的密钥号。