gpg가 gpg-agent를 찾도록 하는 방법

gpg가 gpg-agent를 찾도록 하는 방법

Fedora 22에서 gpg는 gpg-agent를 찾을 수 없습니다:

% gpg-agent --daemon                                           

% gpg -vvv --use-agent --no-tty --decrypt file.gpg 
gpg: using character set `utf-8'
:pubkey enc packet: version 3, algo 1, keyid 3060B8F7271AFBAF
  data: [4094 bits]
gpg: public key is 271AFBAF
gpg: using subkey 271AFBAF instead of primary key 50EA64D5
gpg: using subkey 271AFBAF instead of primary key 50EA64D5
gpg: gpg-agent is not available in this session
gpg: Sorry, no terminal at all requested - can't get input

답변1

버전을 확인하여 문제를 찾으세요.

% gpg-agent --version
gpg-agent (GnuPG) 2.1.7

% gpg --version                                                               
gpg (GnuPG) 1.4.19

이러한 구성 요소는 다른 패키지에 있습니다( 내 경우 gnupg2-2.1.7-1.fc22.x86_64에는 gnupg-1.4.19-2.fc22.x86_64). 해결책은 gpg2 대신 명령을 사용하는 것입니다 gpg.

답변2

이것이 누구에게나 도움이 된다면 gpg1.4는 2.1과 잘 작동합니다 gpg-agent.

약간의 조사 끝에 다음 게시물을 발견했습니다.https://lists.gnupg.org/pipermail/gnupg-devel/2014-October/029024.html

에이전트는 호환되지만 이전 버전의 gpg에 필요한 환경 변수를 더 이상 내보내지 않습니다. 수동으로 설정하면 작동합니다.

export GPG_AGENT_INFO=${HOME}/.gnupg/S.gpg-agent:0:1

관련 정보