.bashrc
ファイルでこのようなgpg-agentを起動していました
[ -f ~/.gpg-agent-info ] && source ~/.gpg-agent-info
if [ -S "${GPG_AGENT_INFO%%:*}" ]; then
export GPG_AGENT_INFO
else
eval $( gpg-agent --daemon --write-env-file ~/.gpg-agent-info )
fi
GPG_TTY=$(tty)
export GPG_TTY
ログイン時に16.04にアップグレードしたため、次のメッセージが表示されます。
gpg-agent[11727]: WARNING: "--write-env-file" is an obsolete option - it has no effect
gpg-agent[11728]: gpg-agent (GnuPG) 2.1.11 started
S.gpg-agent is written in .gnupg/
したがって、write-env-file
はサポートされなくなりました。 Pinentryダイアログボックスにgpgパスワードを入力できなくなり、gpgにこれを再利用させることができなくなりました。これはUbuntu 14.04でできました。
16.04でこれを設定するにはどうすればよいですか?
問題は、gpg-agent 2.1.11がGPG_AGENT_INFO環境変数を設定しないということです。ソケットファイルを指すようにGPG_AGENT_INFOをエクスポートする場合、つまり、pidと所有者pidでGPG_AGENT_INFO =/home //。gnupg/S.gpg-agent:12065:1をエクスポートすると、パスフレーズのpinentryボックスが表示されます。
16.04.1 LTSでは、gpg.conf
にあるオプションファイル~/.gnupg
がありませんでした。オプションuse-agent
(他の古いUbuntu 14.04-LTSと同じように)を使用して作成し、機能しました。