Sem o gpg-agent em execução, posso digitar minha senha para assinar as coisas:
$ echo 123 | gpg -s
You need a passphrase to unlock the secret key for
user: "Mr. Ops <ops@bxxx.com>"
2048-bit RSA key, ID 20F31903, created 2014-03-13
gpg: gpg-agent is not available in this session
Enter passphrase:
Funciona bem. Mas eu não quero digitar minha senha o tempo todo, então eu corro gpg-agent:
$ eval $(gpg-agent --daemon)
Agora, seria de esperar que minha senha fosse solicitada pelo menos uma vez, mas nunca o sou e todas as operações que usam gpg falham.
$ echo 123 | gpg -s
You need a passphrase to unlock the secret key for
user: "Mr. Ops <ops@bxxxx.com>"
2048-bit RSA key, ID 20F31903, created 2014-03-13
gpg: cancelled by user
gpg: no default secret key: bad passphrase
gpg: signing failed: bad passphrase
Como obtenho minha senha armazenada no agente? Depois de tê-lo lá, como mantê-lo nas sessões de login? (Idealmente, nunca mais quero ser avisado.) Isso é no Ubuntu 12.04.4 com os pacotes padrão do apt-get gpg, caso isso importe.