gnupg:尝试 gpg --gen-key 时出现错误

gnupg:尝试 gpg --gen-key 时出现错误

我尝试删除 .gnupg 目录,但错误再次出现。

我明白了:

gpg: lookup_hashtable failed: eof
gpg: lookup_hashtable failed: eof
gpg: upd_hashtable: read failed: eof
gpg: trust record 2, type 12: write failed: eof
gpg: Error: The trustdb is corrupted.
gpg: You may try to re-create the trustdb using the commands:
gpg:   cd ~/.gnupg
gpg:   gpg2 --export-ownertrust > otrust.tmp
gpg:   rm trustdb.gpg
gpg:   gpg2 --import-ownertrust < otrust.tmp
gpg: If that does not work, please consult the manual

我尝试遵循错误抛出的建议,但这也不起作用。尝试用谷歌搜索问题,但没有找到“lookup_hastable”的结果。

我还安装了 Seahorse 并将我的 ssh 密钥存储在 Seahorse 中。会不会和海马发生冲突?

gpg --gen-key从我的普通用户帐户运行,并没有尝试做任何花哨的事情:只是创建一个标准的 gpg 密钥。

答案1

我遇到了类似的问题,lookup_hashtable 失败了Unknown system error

我认为这是在通过 gpg (而不是 gpg2)导入私钥后发生的gpg --allow-secret-key-import --import private.key

设置信任级别后如下这个帖子,错误消失了。

答案2

我有同样的问题。重要的是要认识到,有两个主要版本GnuPG(“经典”和“稳定”,还有“现代” 2.1):gpg和(在 Fedora Core 上,它们分别由软件包和gpg2提供)。gnupggnupg2

我在互联网上进行了trustdb广泛的搜索,删除了~/.gnupg,但找到的信息很少,但这没有帮助。

由于我的操作系统存储库中有旧版本的,我从官方网站gpg下载了“现代”版本。gpg有一个问题libgrypt,我需要安装更新的库版本才能gpg工作。当我手动执行此操作时,我的系统根本无法启动。我想我很快就会解决这个问题,但现在我用另一台笔记本电脑工作。

最后我意识到有一个包gnupg2,我使用了命令gpg2而不是gpg.这工作完美无缺。如果你想完全忘记数字,你可以alias gpg=gpg2在你的程序中设置一个bash 。.bash_profile

相关内容