错误的 RPM 签名

错误的 RPM 签名

我正在尝试设置一个包含 CentOS 6.4 和 5.9 软件包的 repo。机器本身是 6.4。

我已经创建了一个 GPG 密钥,并且能够毫无问题地对我的 6.4 软件包进行签名。但是当我为 5.9 创建它们时,我得到了标头错误。我意识到 RPM 的版本不同,所以我安装了 4.2(5.9 附带的版本)并尝试使用它进行签名... 它仍然不起作用。

[root@usch1ksv01 RPMS]# /usr/local/bin/rpm --version
RPM version 4.4.2.3

[root@usch1ksv01 RPMS]# rpm --version
RPM version 4.8.0

[root@usch1ksv01 RPMS]# /usr/local/bin/rpm --checksig ypserv-2.19-10.el5_9.1.x86_64.rpm 
ypserv-2.19-10.el5_9.1.x86_64.rpm: RSA sha1 (MD5) (PGP) md5 NOT OK (MISSING KEYS: PGP#a8228ab5) 

[root@usch1ksv01 RPMS]# rpm --checksig ypserv-2.19-10.el5_9.1.x86_64.rpm 
ypserv-2.19-10.el5_9.1.x86_64.rpm: rsa sha1 (md5) pgp md5 OK

我不明白为什么签名对旧版本的 RPM 不起作用...我只是执行了 rpmsign --addsign ,它显然对新版本有效,但对旧版本无效。我也使用两个版本的 RPM 尝试签名。

我完全没有主意了,所以任何帮助我都会非常感激!谢谢!

答案1

表示MISSING KEY您还没有rpm --import0xa8228ab5公钥进行操作。

您可以看到导入到 rpmdb 中的公钥

 rpm -q gpg-pubkey

导入后(您可能需要使用 gnupg 导出 ASCII 装甲公钥),您应该会看到gpg-pubkey 在版本字段中键入的内容。

相关内容