GnuPG 配置中的某些更改需要gpg-agent
重新启动/重启(根据文档),但是...我该怎么做?我试过了gpg-agent restart
,,service gpg-agent restart
但没有成功。
答案1
使用当前 GPG (2.1+),停止 gpg-agent
你可以使用gpgconf --kill
,像这样:
gpgconf --kill gpg-agent
您不需要手动重新启动它。GPG 会在需要时重新启动它。
这些信息可以在gpg-agent 在线手册和man gpg-agent
。
答案2
我首选的方式是使用gpg-connect-agent reloadagent /bye
。请gpg-connect-agent help /bye
参阅完整的命令列表。
答案3
在现代基于 systemd 的 Linux 发行版中,gpg-agent
由用户空间 systemd 控制。
您可以使用以下命令(无需 sudo)检查/启动/停止它:
systemctl --user status gpg-agent
systemctl --user stop gpg-agent
systemctl --user start gpg-agent
答案4
根据我的经验,在某些情况下 gpg 无法启动新的 gpg 代理(导入新密钥?)。
按照如下方式终止旧代理:
GNUPGHOME="${GNUPGHOME:-$HOME/.gnupg}" gpgconf --kill gpg-agent
然后开始新的:
gpg-agent --homedir "${GNUPGHOME:-$HOME/.gnupg}" --daemon
在启动时明确设置 --homedir 可确保当您有多个主目录时 ps 列表清晰;它类似于 gpg 启动时所做的操作。
停止时设置 GNUPGHOME 不是必需的,但它可能会让您或代码审查者更舒服。