我使用的是 Centos 6.5,当我想安装软件包时,yum
出现以下错误:
GPG key retrieval failed: [Errno 14] Could not open/read file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puias
我怎样才能解决这个问题?
答案1
如果您信任该存储库,您只需编辑该文件/etc/yum.repos.d/mysql-community.repo
并禁用gpgcheck
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=1
gpgcheck=0
答案2
发生此错误是因为 /etc/yum.repos.d/ 中有一些 YUM 存储库配置,其中列出了如下所示的 GPG 密钥:
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puias
此配置告诉 YUM 存储库的 GPG 密钥存在于磁盘上。您从 YUM 得到的错误是 YUM 让您知道它在路径中找不到 GPG 密钥/etc/pki/rpm-gpg/RPM-GPG-KEY-puias
因此,通过像您一样手动写入 GPG 密钥/etc/pki/rpm-gpg/RPM-GPG-KEY-puias
,YUM 就能够在该路径中找到该密钥。
或者,您可以设置gpgkey
密钥的 URL,如下所示:
gpgkey=http://springdale.math.ias.edu/data/puias/6/x86_64/os/RPM-GPG-KEY-puias
在您的存储库配置中。
GPG 和 YUM/RPM 可能相当棘手。如果您对更多内部结构如何工作感到好奇,请查看此博客文章。
答案3
您还可以使用以下命令禁用 gpg 检查而不编辑 repo 文件:
yum install --nogpgcheck your_package
答案4
使用 yum install 时,偶尔会遇到这样的错误: Couldn't open file /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
这是因为 /etc/yum.repos.d 目录中 yum 存储库的配置文件中列出了以下 GPG 密钥:
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 此配置告诉 YUM 此存储库的 GPG 密钥存在于磁盘上。当 YUM 在 /etc/pki/rpm-gpg 路径中找不到 GPG key 时,会报上述错误。
解决方案:
cd /etc/pki/rpm-gpg
wget https://archive.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7