为什么我安装了 pinentry 后 gpg 会失败?

为什么我安装了 pinentry 后 gpg 会失败?

尽管我安装了 pinentry,仍然得到以下错误:

xxxxxxxMacxxxxx:~ MAU$ gpg2 -c --cipher-algo=aes
gpg-agent[89931]: can't connect to the PIN entry module: IPC connect call failed
gpg-agent[89931]: command get_passphrase failed: No pinentry
gpg: problem with the agent: No pinentry
gpg: error creating passphrase: Operation cancelled
gpg: symmetric encryption of `[stdin]' failed: Operation cancelled

答案1

它实际上是gpg-agent.conf我安装 mac GPG 时留下的文件。哦,对了,这是对称加密函数的测试gpg(顺便说一下,密码是 stackexchange(全部小写)):

-----BEGIN PGP MESSAGE-----
Version: GnuPG v2.0.20 (Darwin)

jA0ECgMC77crPqRqPGLE0pgB6nSD00hMogXLXJ1V2HlCzkFxbJlB7ZOo1HlsHENJ
xDuccBNqlxvSEqZuege04dehYOfKPe3jQEODaywH2sQS9VNR04Wvjeek9lyGHh0A
sWdiUcW1x884oZG0yOdpLXvY8t+Tzc0tWH0amyZACQ5KsX34L2cNsvbGwDejYp0d
C31gNu4lVAH+4EZe3rnY5YImCZNlQM2/CQ==
=z3bc
-----END PGP MESSAGE-----

答案2

当 pinentry 死机时,您需要从其启动指令安装到的位置重新启动它(我很确定它位于 /System/Library/ 中的某个位置,但这并不能真正缩小范围)。对 gpg-agent 的进程 ID 执行“kill -HUP $PID”也可能会使其启动。

另外,GPG 1.4.x 可以与 GPG 2.0.x 共存,并且通常无需 gpg-agent 即可编译。因此它将继续工作。不过,我建议使用当前版本从源代码重新编译。这就是我避免 gpg-agent 带来的所有麻烦的方法。

相关内容