我正在尝试在我的 Ubuntu 14 上安装 mongoDB
第一步是
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
但它向我显示了以下错误
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.lAXAyfkEwA --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d/linuxuprising-java.gpg --keyring /etc/apt/trusted.gpg.d/openjdk-r-ppa.gpg --keyring /etc/apt/trusted.gpg.d/webupd8team-java.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
?: server: Host not found
gpgkeys: HTTP fetch error 7: couldn't connect: Connection timed out
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
我谷歌了一下,发现目的地是我的机器无法成功发出请求的地方。需要使用代理。
来到这个帖子
https://askubuntu.com/questions/147311/no-gpg-key-from-behind-a-firewall
它说添加Acquire::http::Proxy "http://user:password@server:port";
apt.conf 文件并尝试,但没有成功。
怀疑:
1)使用数据库(mongoDb)时使用 GPG 密钥的实际目的是什么?
2) 我是否需要按原样添加 ( Acquire::http::Proxy "http://user:password@server:port
) 或需要在 apt.conf 文件中提及我的用户名、服务器和密码?如果是,我如何检查我需要在文件中提及的服务器名称和端口?我猜用户名和密码是我的系统的用户名和密码。对吗?
谢谢
更新:ping-c 1 keyserver.ubuntu.com
返回以下
PING keyserver.ubuntu.com (91.189.89.49) 56(84) 字节数据。来自 boquila.canonical.com (91.189.89.49) 的 64 字节:icmp_seq=1 ttl=50 time=144 ms
--- keyserver.ubuntu.com ping 统计 --- 已发送 1 个数据包,已接收 1 个数据包,0% 数据包丢失,时间 0ms rtt min/avg/max/mdev = 144.294/144.294/144.294/0.000 ms
答案1
1)使用数据库(mongoDb)时使用 GPG 密钥的实际目的是什么?
它们不用于数据库。它们用于验证下载。Apt 使用 gpg 来签名包元数据(例如大小和哈希值),以确保恶意镜像无法向您提供恶意包。