添加了密钥,但是dget仍显示“gpg:无法检查签名:未找到公钥”
尝试使用dget
和.dsc
文件从这里下载Django源包。
然后dget无法validation源,因为它缺少公钥。
$ dget https://launchpad.net/ubuntu... [...] dscverify: python-django_1.4.1-2.dsc failed signature check: gpg: Signature made Tue 21 Aug 2012 09:12:04 CEST using RSA key ID F2AC729A gpg: Can't check signature: public key not found Validation FAILED!!
好吧,我把这把钥匙加到我的钥匙圈上,因为我觉得我可以信任这个钥匙:
$ gpg --keyserver keyserver.ubuntu.com --recv-key 0xF2AC729A gpg: requesting key F2AC729A from hkp server keyserver.ubuntu.com gpg: key F2AC729A: "Raphaël Hertzog " not changed gpg: Total number processed: 1 gpg: unchanged: 1
(好吧,这个输出后来运行,当它已经在我的密钥环中)
它确实存在:
$ gpg --fingerprint F2AC729A pub 4096R/F2AC729A 2009-05-07 Key fingerprint = 3E4F B711 7877 F589 DBCF 06D6 E619 045D F2AC 729A uid Raphaël Hertzog uid Raphaël Hertzog (Debian) uid Raphaël Hertzog (Freexian SARL) sub 2048R/71F23DEE 2009-05-07
但仍然出于同样的原因失败:
gpg: Signature made Tue 21 Aug 2012 09:12:04 CEST using RSA key ID F2AC729A gpg: Can't check signature: public key not found
我正在以常规用户身份运行所有这些命令。 我也尝试将此密钥添加到APT的密钥环和root的密钥环中。 两者都无济于事。
我在这里想念的是什么?
我遇到了和你一样的问题,在检查了dscverify
的手册页后,我发现了一个解决方案:
在~/.devscripts
添加以下行:
DSCVERIFY_KEYRINGS="/etc/apt/trusted.gpg:~/.gnupg/pubring.gpg"
您可以反转文件并使用/etc/devscripts.conf:
DSCVERIFY_KEYRINGS="~/.gnupg/pubring.gpg:/etc/apt/trusted.gpg"