You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何导入dnf/yum仓库签名密钥?解决密钥验证弹窗问题

解决DNF/YUM仓库GPG密钥重复提示问题

我来帮你搞定这个烦人的重复提示问题!你说得没错,repo_gpgcheck=1确实会让DNF校验仓库元数据的签名,而且它确实依赖仓库配置文件里gpgkey字段指定的密钥。每次操作都弹导入提示,本质是因为这个密钥还没被添加到系统信任的RPM密钥环里——DNF/YUM都是基于RPM的密钥管理体系的,所以搞定RPM密钥环就解决问题了。

下面是具体操作步骤:

1. 确认仓库配置里的GPG密钥地址

首先找到你配置的仓库文件(通常在/etc/yum.repos.d/目录下,后缀为.repo),打开它找到gpgkey这一行,比如:

gpgkey=https://mirror.example.com/repos/RPM-GPG-KEY-example

把这个地址记下来,或者直接复制。

2. 导入密钥到系统密钥环

用rpm --import命令直接导入这个密钥,不管是远程URL还是本地文件路径都可以:

  • 如果是远程URL:
rpm --import https://mirror.example.com/repos/RPM-GPG-KEY-example
  • 如果是本地密钥文件(比如你已经下载到/tmp/RPM-GPG-KEY-example):
rpm --import /tmp/RPM-GPG-KEY-example

3. 验证密钥是否成功导入

执行下面的命令可以查看系统里已导入的所有GPG公钥:

rpm -qa gpg-pubkey*

或者更清晰的格式,能看到密钥对应的描述信息:

rpm --query gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE} --> %{SUMMARY}\n'

你应该能找到刚才导入的密钥对应的条目。

额外说明

  • YUM的操作和DNF完全一致,因为二者共享RPM的密钥管理机制,所以你推测的情况是对的,这套方法同样适用于YUM。
  • 如果导入后还是弹出提示,大概率是你导入的密钥和仓库元数据签名用的不匹配,或者gpgkey字段的地址有误。这时候可以手动下载密钥文件,用gpg --import先查看密钥的指纹,再和仓库官方公布的指纹对比,确认无误后再用rpm --import导入。

内容的提问来源于stack exchange,提问作者Pawel Veselov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:41:45