问题描述
我试过了:
-
SIGHUP方法->没有成功
-
gpg-agent.conf中的缓存超时->似乎未读取此文件,我在gpg.conf中有’use-agent’行
我该怎么办 ?
最佳思路
首先让我说我有完全相同的问题…
即使gpg-agent
正在运行,您的GPG机密也可能由Gnome密钥环处理。 This answer提供了有关可用选项的一些详细信息。
另一种方法是禁用Gnome密钥环的GPG组件,以便使用gpg-agent
:
-
您可以通过删除文件
/etc/xdg/autostart/gnome-keyring-gpg.desktop
(或将其重命名为*.desktop
以外的名称)来实现。 -
您可能已经具有
gpg-agent
自动启动所需的设置。至少对我来说,运行Ubuntu 13.04,这是真的。但是,如果需要,请参考this post以获取有关如何配置它的一些信息。 -
注销并重新启动后,只有
gpg-agent
应该正在运行,并且它确实响应~/.gnupg/gpg-agent.conf
中的设置和SIGHUP
信号。 -
最后,最好禁用Gnome Keyring的SSH组件,因为:
-
您可能也不想在整个会话中都解锁SSH密钥,并且可能想使用/配置
ssh-agent
或gpg-agent
-
您对
gpg-agent
自动启动的配置可能已经包含SSH支持(Ubuntu 13.04中的默认配置支持)
-
次佳思路
对于真正使用gpg-agent的用户,您可以忘记以下密码:
echo RELOADAGENT | gpg-connect-agent
第三种思路
GPG:在一个命令中:
gpg-connect-agent reloadagent /bye
SSH:对于ssh代理,您可能需要这两个:
ssh-add -D #delete identities
ssh-agent -k #kill ssh-agent