无法通过RPM包在RHEL 9上安装Cassandra的问题求助
RHEL 9 安装Cassandra RPM包GPG签名验证失败的解决办法
问题描述
在RHEL 9系统中通过RPM仓库安装Cassandra 4.1x时,出现以下报错:
Error: Failed to download metadata for repo 'cassandra': repomd.xml GPG签名验证错误: gpgme_op_verify() error: No data
对应的仓库配置如下:
[cassandra] name=Apache Cassandra baseurl=https://redhat.cassandra.apache.org/41x/noboolean/ gpgcheck=1 repo_gpgcheck=1 gpgkey=https://downloads.apache.org/cassandra/KEYS
解决方案
1. 手动导入Cassandra GPG密钥
执行以下命令确保系统信任Apache Cassandra的签名密钥:
sudo rpm --import https://downloads.apache.org/cassandra/KEYS
2. 调整仓库GPG验证配置
编辑Cassandra仓库配置文件(默认路径为/etc/yum.repos.d/cassandra.repo),修改repo_gpgcheck参数:
- 将
repo_gpgcheck=1改为repo_gpgcheck=0,绕过仓库元数据的GPG签名验证(适合导入密钥后仍报错的场景)
修改后的配置示例:
[cassandra] name=Apache Cassandra baseurl=https://redhat.cassandra.apache.org/41x/noboolean/ gpgcheck=1 repo_gpgcheck=0 gpgkey=https://downloads.apache.org/cassandra/KEYS
3. 清理缓存并重新安装
执行命令清理dnf缓存并生成新的缓存:
sudo dnf clean all sudo dnf makecache
随后重新执行安装命令:
sudo dnf install cassandra
问题原因
该错误主要由两种情况导致:
- 系统未正确导入Cassandra仓库的GPG密钥,导致无法验证元数据签名
- RHEL 9的dnf工具与Cassandra仓库的元数据签名逻辑存在兼容性问题,即使导入密钥也无法通过验证
内容的提问来源于stack exchange,提问作者AWSMANE
相关产品推荐
相关产品推荐

