ไม่สามารถติดต่อตัวแทน gpg


11

ในการติดตั้ง 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 <nicolas@xxx.com>"
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

ฉันกำลังคิดถึงอะไร


สตาร์ทเอเจนต์ด้วย--log-file [myfile]และดูว่าจะให้ข้อผิดพลาดใด ๆ ในบันทึกหรือไม่
Raniz

gpg: gpg-agent is not available in this sessionเกิดข้อผิดพลาดทางด้านขวาที่ฉันได้เป็น ถ้าฉันมีบันทึกตามที่คุณแนะนำสิ่งที่ฉันได้รับคือ:2016-12-19 13:39:39 gpg-agent[10957] gpg-agent (GnuPG) 2.1.11 started
n1r3

ผมพยายามที่จะตั้งค่าด้วยตนเองGPG_AGENT_INFOแต่ผมไม่ทราบว่าวิธีการที่จะรู้ว่าสิ่งที่ชุด ... gpg: problem with the agent - disabling agent useที่เมื่อผมได้
n1r3

ในฐานะที่เป็น root การตั้งค่าใช้export GPG_AGENT_INFO=/var/lib/postgresql/.gnupg/S.gpg-agent:0:1งานได้ แต่ไม่ใช่ในฐานะผู้ใช้ นอกจากนี้ดูเหมือนว่าฉันจะต้องทำด้วยตนเองใช่ไหม?
n1r3

คุณเพิ่มGPG_TTY = $ (tty) ส่งออก GPG_TTYไปยังไฟล์. bashrcของคุณตามที่ระบุไว้ในหน้า _man gpg-agent หรือไม่
George Udosen

คำตอบ:


13

ตอบตัวเองในกรณีที่คนอื่นติดอยู่กับเรื่องนี้

บน 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

0

ทางออกคือการติดตั้งgpgv2:

sudo apt install gpgv2

นี่เป็นเพราะ gpg-agent ที่มาพร้อมกับ Ubuntu เป็นรุ่น 2 และพยายามเชื่อมต่อกับ gpg กับรุ่น 2 แต่ Ubuntu ติดตั้ง gpg เวอร์ชัน 1 แล้ว


3
คุณอาจหมายถึงgnupg2
Dmitriusan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.