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

bit*_*oob 8 gpg gnupg

我尝试删除我的 .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
Run Code Online (Sandbox Code Playgroud)

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

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

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

Yar*_*nko 0

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

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

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

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