
當我執行以下操作:
gpg --decrypt somefile.pgp
我看到出現一個圖形對話框,詢問我的 GPG 私鑰的密碼。
之後,後續運行不需要密碼,因為它們似乎使用來自記憶體中 GPG 代理的 GPG 金鑰。
如何清除該 GPG 代理程式的所有金鑰?我不喜歡它們無用地留在記憶中。
答案1
man gpg-agent
給你:
--default-cache-ttl n
Set the time a cache entry is valid to n seconds. The default is 600 seconds.
要么修改啟動 gpg-agent 的方式並添加此參數並縮短生存時間,要么根本不啟動 gpg-agent。
編輯
您需要弄清楚到底是哪個程式要求您提供密碼。到目前為止,很明顯它不是 gpg-agent 也不是 seahorse。
開著窗戶跑wmctrl -lp | grep "The Window Title, Case Sensitive"
。您應該看到如下行:
0x03e0000c 0 2580 <your_host_name> The Window Title
第三個數字是進程 ID。運行cat /proc/2580/cmdline
(用實際進程 ID 取代 2580),您將看到要求您輸入密碼的程式檔案以及所有參數。然後你可以查一下那個,看看你能做些什麼。卸載它當然是一個選擇。