gpg가 gpg-agent를 찾도록 만드는 방법


23

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

답변:


36

버전을 보면 문제가 드러납니다.

% 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.


1
감사. 나는이 물건을 알아 내려고 인터넷에서 30 분을 보냈다 ... 대부분의 설명서와 지침은 도구 버전 간의 파손을 고려하지 않는다는 것이 밝혀졌습니다. 내가 서명하고 싶었던 20 개의 파일에 gpg를 실행할 때마다 암호를 입력해야했는데, 이제 한 번만 할 수 있습니다. 다시 감사합니다.
밝은 돈

이것은 여전히 ​​Fedora 27과 관련이 있습니다. 사용 gpg2도하면 그놈의 통합을 가능하게
알렉스 Gyoshev

8

일부에게 도움이되는 경우 gpg1.4는 gpg-agent2.1에서 잘 작동 할 수 있습니다 .

그것을 볼 때, 나는이 게시물을 발견했다 : https://lists.gnupg.org/pipermail/gnupg-devel/2014-October/029024.html

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

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


Fedora는 다른 기본 소켓 경로를 사용합니다. GPG_AGENT_INFO=/run/user/$(id -u)/gnupg/S.gpg-agent:0:1대신 사용해야 했습니다.
Pawel Veselov
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.