我试图在CentOS 5.5上签署JavaJDK1.6u21 64位RPM,以便用于空间行走,但我遇到了问题。它似乎是签好了,但当我检查签名时,它似乎丢失了我刚才用来签名的钥匙。但是RPM在它的列表中显示了关键..。
# rpm --addsign jdk-6u21-linux-amd64.rpm
Enter pass phrase:
Pass phrase is good.
jdk-6u21-linux-amd64.rpm:
gpg: WARNING: standard input reopened
gpg: WARNING: standard input reopened
# rpm --checksig -v jdk-6u21-linux-amd64.rpm
jdk-6u21-linux-amd64.rpm:
Header V3 DSA signature: NOKEY, key ID ecfd98a5
MD5 digest: OK (650e0961e20d4a44169b68e8f4a1691b)
V3 DSA signature: OK, key ID ecfd98a5然而,我已经导入了密钥(为隐私进行编辑):
# rpm -qa gpg-pubkey* |grep ecfd98a5
gpg-pubkey-ecfd98a5-4caa4a4c
# rpm -qi gpg-pubkey-ecfd98a5-4caa4a4c
Name : gpg-pubkey Relocations: (not relocatable)
Version : ecfd98a5 Vendor: (none)
Release : 4caa4a4c Build Date: Mon 04 Oct 2010 10:20:49 PM CDT
Install Date: Mon 04 Oct 2010 10:20:49 PM CDT Build Host: localhost
Group : Public Keys Source RPM: (none)
Size : 0 License: pubkey
Signature : (none)
Summary : gpg(FirstName LastName <myemail@example.com>)
Description :
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: rpm-4.4.2.3 (NSS-3)
...key goes here...
=gKjN-----END PGP PUBLIC KEY BLOCK-----我肯定会运行64位版本的CentOS:
# uname -a
Linux spacewalk.mycompany.corp 2.6.18-194.11.4.el5 #1 SMP Tue Sep 21 05:04:09 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux没有一个有效的签名,空间行走拒绝安装RPM,除非我完全禁用签名检查。我在同一台机器上尝试了两个不同的键和两个不同的用户,但都没有成功。
有什么好主意吗?
发布于 2010-10-09 05:25:59
因为它显示了您的公钥ID,所以checksig输出是正确的。
你是在两台机器之间还是在一台机器上做这件事?
发布于 2011-03-29 23:34:20
在RHEL/CentOS 5中有一个已知的带有大型RPM的bug,这会导致GPG在一些大型RPM中总是失败。
https://serverfault.com/questions/187583
复制相似问题