Không có khóa gpg từ phía sau tường lửa


13

Chỉ vấp phải chủ đề kín này ở đây: Lỗi GPG trong khi chạy apt-get

Vấn đề tương tự ở đây, Ubuntu 12.04 đằng sau một tường lửa và proxy.

Tôi không nghĩ rằng vấn đề là trùng lặp với chủ đề đã cho. Vì vậy, tôi mở lại vấn đề này trong chủ đề này.

Đầu ra của tôi:

root@musik-Aspire-7741:~# apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-  keyring /tmp/tmp.tWVMhyIMYh --trustdb-name /etc/apt/trustdb.gpg --keyring     /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver     hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87
gpg: Key 58B98E87 of hkp Server keyserver.ubuntu.com request
?: keyserver.ubuntu.com: Connection refused
gpgkeys: HTTP fetch error 7: couldn't connect: Connection refused
gpg: No valid OpenPGP data found.
gpg: Total number processed: 0

Kết luận: gpg không hoạt động với hkp://keyserver.ubuntu.com:80thông qua http.


Nếu bạn phải thông qua một proxy, bạn cần nói với GPG để sử dụng proxy. Bạn đã http_proxyđặt chưa? ( echo $http_proxy)
tumbleweed

Câu trả lời:


9

Đằng sau proxy, biến môi trường http_proxynên được đặt. Điều này có thể được thực hiện theo một trong hai cách.

1. Tạo apt.conftệp trong thư mục / etc / apt nếu không có và thêm dòng sau vào nó. Acquire::http::Proxy "http://user:password@server:port";
2.Simply đặt biến môi trường bằng lệnh sau từ terminal.
export http_proxy=http://user:password@server:port

Cuối cùng, một tùy chỉnh nhỏ, thêm tùy chọn -E vào lệnh cho các biến môi trường được sử dụng như sau
sudo -E apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87


2
-E đã thực hiện mánh khóe
alexandre1985

3

Nếu bạn đứng sau một proxy, thì bạn phải đặt http_proxybiến môi trường trong Bash. Cách tốt nhất để làm điều đó là mở vỏ gốc với sudo bash.

Sau đây:

export http_proxy="http://xxx.yyy.zzz.www:abcd"

Sau đó thêm repo.


1

Tôi đã dành gần hai ngày cho việc này để cài đặt phiên bản MongoDB mới nhất. Nhưng tôi đã phải đối mặt với cùng một vấn đề như dưới đây:

$ apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.pvb8fwe4Rs --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d//nsa-keyring.gpg --keyserver keyserver.ubuntu.com --recv 7F0CEB10
gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: keyserver timed out
gpg: keyserver receive failed: keyserver error

Cuối cùng tôi đã cài đặt mongoDB với sự trợ giúp của các bước được chia sẻ bởi "ellore".

  1. Đã thêm proxy http và https trong apt.conftệp.
  2. Đã thêm các biến env bằng cách sử dụng export httphttpslệnh.
  3. Đã thêm "-E" trong dòng lệnh:

     sudo -E apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
    

Sau đó, tôi nhận được phản hồi dưới đây:

gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: key 7F0CEB10: "Richard Kreuter <richard@10gen.com>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1

Và tôi đã cài đặt thành công MongoDB 3.0.7 như hình bên dưới,

$ mongo --version
MongoDB shell version: 3.0.7
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.