web-dev-qa-db-ja.com

gpg-agentに到達できません

Ubuntu 16.04の新規インストールで、gpgを使用してデータベースバックアップを暗号化したいのですが、gpg-agentが機能しません。

postgres@db:~$ gpg -s test.txt

You need a passphrase to unlock the secret key for
user: "Nicolas Remond <[email protected]>"
2048-bit RSA key, ID F5DECA47, created 2016-11-03

gpg: gpg-agent is not available in this session
Enter passphrase: 

また、以前に以下を行ったように、gpgエージェントが実行されているようです。

postgres@db:~$ gpg-agent
gpg-agent[1715]: no gpg-agent running in this session
postgres@db:~$ gpg-connect-agent /bye
gpg-connect-agent: no running gpg-agent - starting '/usr/bin/gpg-agent'
gpg-connect-agent: waiting for the agent to come up ... (5s)
gpg-connect-agent: connection to agent established
postgres@db:~$ pidof gpg-agent
1762

そして、gpg設定にはuse-agent設定があります:

postgres@dbmaster0:~$ cat ~/.gnupg/gpg.conf | grep use-agent
# For Ubuntu we now use-agent by default to support more automatic
use-agent

私は何が欠けていますか?

11
n1r3

他の誰かがこれに引っかかっている場合に備えて、自分自身に答えてください。

Ubuntu 16.04では、デフォルトのバージョンは次のとおりです。

    # gpg --version
    gpg (GnuPG) 1.4.20

そして

    # gpg-agent --version
    gpg-agent (GnuPG) 2.1.11

互換性がありません。 GPG2の使用は必須です:

    # gpg2 --version
    gpg (GnuPG) 2.1.11
13
n1r3

解決策はgpgv2をインストールすることです:

Sudo apt install gpgv2

これは、Ubuntuに付属するgpg-agentがバージョン2であり、バージョン2でgpgに接続しようとするためです。しかし、Ubuntuにはgpgバージョン1がインストールされています。

0
Subin