GPG无法解密:没有pinentry程序

10 gpg pinentry

pass我无法直接 解密我的密码gpg

gpg: encrypted with rsa4096 key, ID id, created creation_date
      "name <email>"
      gpg: public key decryption failed: No pinentry
      gpg: decryption failed: No pinentry
Run Code Online (Sandbox Code Playgroud)

它不会显示询问主密码的提示对话框。

它说“没有 pinentry”,但程序已安装:

$ ls /usr/bin/pinentry*
/usr/bin/pinentry
/usr/bin/pinentry-curses
/usr/bin/pinentry-emacs
/usr/bin/pinentry-gnome3
/usr/bin/pinentry-gtk-2
/usr/bin/pinentry-qt
/usr/bin/pinentry-tty
Run Code Online (Sandbox Code Playgroud)

请尽快帮助我,因为如果没有我的密码,我将无法登录任何内容,这些密码都是用 GPG 加密的。

小智 17

我通过运行以下命令解决了问题

pkill gpg-agent
gpg-agent --pinentry-program=/usr/bin/pinentry-gtk-2 --daemon
Run Code Online (Sandbox Code Playgroud)

它起作用了。我不知道为什么 pinentry 不起作用,但启动一个新的 gpg-agent 守护进程已经起作用了。

  • 我可以确认,它对于 Macos 也很有用,但略有不同: `gpg-agent --pinentry-program=/usr/local/bin/pinentry --daemon` (2认同)