yum安装软件报Error: GPG check FAILED
环境信息:cat /etc/openEuler-release
openEuler release 22.03 (LTS-SP1)
报错信息
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing ‘yum clean packages’.
Error: GPG check FAILED
问题分析
欧拉的repo默认配置会检查gpg证书。然而在repo文件中配置的镜像源无法找到gpg文件,因此报此错误。
解决方法一:简单粗暴,这次不检查gpg
如果只是为了这一次安装不报错,只需要加一个nogpgcheck参数,即可跳过gpg验证。
yum install -y iSulad --nogpgcheck
解决方案二:简单粗暴,永久不检查gpg.
禁用repo的gpg检查,设置gpgcheck=0,永久禁用gpg检查
!如果软件源不是openEuler.repo,只需要使用该方法,修改对应的repo文件即可
# /etc/yum.repos.d/openEuler.repo修改前存在下面2种情况中的一种
# 情况一:gpgcheck=1
# cat /etc/yum.repos.d/openEuler.repo
[openEuler]
baseurl=https://repo.openeuler.org/openEuler-22.03-LTS/OS/$basearch
enabled=1
gpgcheck=1
# 情况二:无gpgcheck
# cat /etc/yum.repos.d/openEuler.repo
[openEuler]
baseurl=https://repo.openeuler.org/openEuler-22.03-LTS/OS/$basearch
enabled=1
修改后为gpgcheck=0即可,修改后为
# cat /etc/yum.repos.d/openEuler.repo
[openEuler]
baseurl=https://repo.openeuler.org/openEuler-22.03-LTS/OS/$basearch
enabled=1
gpgcheck=1
解决方案三、理性解决问题,找到gpg,确保校验成功
配置repo源的gpgkey指定gpg文件地址,使得既能保证安全性,又能解决问题。
# step1,访问baseurl,找到gpg文件
# step2,在repo配置文件中指定gpg文件地址
# 修改后为gpgcheck=1,设置gpgkey
# cat /etc/yum.repos.d/openEuler.repo
[openEuler]
baseurl=https://repo.openeuler.org/openEuler-22.03-LTS/OS/x86_64/
enabled=1
gpgcheck=1
gpgkey=https://repo.openeuler.org/openEuler-22.03-LTS/OS/x86_64/RPM-GPG-KEY-openEuler
验证方式
上面方法一、方法二、方法三均测试有效。验证方式是,重新执行下报错的命令,就能看到效果。
方法三执行时,只会在第一次确认安装gpg证书,后续的按照命令都不需要重复按照gpg。