GPG 错误:http://ppa.launchpad.net/git-core/ppa/ubuntu xenial InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY

运行

sudo apt-get update

报错

W: GPG error: http://ppa.launchpad.net/deadsnakes/ppa/ubuntu xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY BA6932366A755776
W: The repository 'http://ppa.launchpad.net/deadsnakes/ppa/ubuntu xenial InRelease' is not signed.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.

解决办法

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA6932366A755776

注意最后一串数字字母改成自己的那个失效的(报错信息里面的):NO_PUBKEY BA6932366A755776

运行结果如下:

joanna@joanna-System-Product-Name:~$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA6932366A755776
Executing: /tmp/tmp.ntHwsGlfhO/gpg.1.sh --keyserver
keyserver.ubuntu.com
--recv-keys
BA6932366A755776
gpg: requesting key 6A755776 from hkp server keyserver.ubuntu.com
gpg: key 6A755776: public key "Launchpad PPA for deadsnakes" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
joanna@joanna-System-Product-Name:~$ sudo apt-get update 
Hit:1 http://packages.microsoft.com/repos/vscode stable InRelease
Hit:2 http://linux.teamviewer.com/deb stable InRelease                         
Hit:3 http://security.ubuntu.com/ubuntu xenial-security InRelease              
Hit:4 http://cn.archive.ubuntu.com/ubuntu xenial InRelease                     
Hit:5 http://packages.ros.org/ros/ubuntu xenial InRelease                      
Get:6 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu xenial InRelease [18.1 kB]
Hit:7 http://cn.archive.ubuntu.com/ubuntu xenial-updates InRelease             
Hit:8 http://cn.archive.ubuntu.com/ubuntu xenial-backports InRelease           
Ign:9 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  InRelease
Hit:10 http://ppa.launchpad.net/graphics-drivers/ppa/ubuntu xenial InRelease   
Hit:11 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64  Release
Ign:13 https://deepin-wine.i-m.dev  InRelease                               
Hit:14 http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu xenial InRelease
Get:15 https://deepin-wine.i-m.dev  Release [1,611 B]
Ign:16 https://deepin-wine.i-m.dev  Release.gpg
Fetched 19.7 kB in 2s (7,804 B/s)
Reading package lists... Done
joanna@joanna-System-Product-Name:~$ 

### Docker 在 Ubuntu Jammy 上因缺少公钥导致无法验证签名的问题解决方案 当在 Ubuntu Jammy (22.04 LTS) 使用 Docker 拉取镜像时遇到 `missing public key` 或类似的签名验证错误,通常是因为系统的 GPG 密钥库中缺失了用于验证 Docker 官方仓库的密钥。以下是具体的解决方法: #### 1. 更新并配置 APT 软件源 确保系统软件包是最新的,并启用官方 Docker 的 APT 存储库。 ```bash sudo apt-get update sudo apt-get install ca-certificates curl gnupg lsb-release ``` 此操作会安装必要的工具来管理 GPG 密钥以及访问远程存储库[^1]。 --- #### 2. 添加 Docker 官方 GPG 密钥 如果当前系统未正确导入 Docker 的官方 GPG 密钥,则可能会触发签名验证失败的错误。通过以下命令添加最新的 GPG 密钥: ```bash curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg ``` 这条命令下载 Docker 提供的 GPG 密钥文件,并将其转换为二进制格式以便后续使用[^3]。 --- #### 3. 设置稳定的 Docker APT 存储库 为了确保能够从正确的存储库获取最新版 Docker 及其依赖项,需设置对应的 APT 配置文件: ```bash echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null ``` 上述脚本指定了适用于当前发行版 (`$(lsb_release -cs)` 对应的是 `jammy`) 的稳定版本 Docker 存储库地址[^2]。 --- #### 4. 安装或更新 Docker 完成以上步骤后,可以安全地安装或升级 Docker 到最新版本: ```bash sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io ``` 这一步骤将自动处理所有必需的依赖关系,并修复可能存在的旧版本兼容性问题。 --- #### 5. 测试拉取功能 最后测试是否能正常拉取镜像而不再出现 `missing signature key` 类型的错误: ```bash sudo docker pull hello-world ``` 如果一切顺利,应该可以看到成功运行的消息输出。 --- ### 注意事项 对于 CentOS 用户而言,该类问题通常是由于默认 YUM 源中的 Docker 版本过低所致;而对于 Ubuntu 系统来说,更多时候是缺乏有效的 GPG 密钥支持造成的。因此,在不同操作系统环境下采取相应的措施尤为重要。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JoannaJuanCV

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值