我最近安装了 Ubuntu 17.04,但无法添加任何 ppa。
我尝试使用不同的密钥服务器手动添加密钥,但每次尝试时我都会收到密钥服务器收到的错误:
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0F164EEB
收到错误:
Executing: /tmp/apt-key-gpghome.qm2WNA0lTK/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0F164EEB
gpg: keyserver receive failed: No keyserver available
$ sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 0F164EEB
收到错误:
Executing: /tmp/apt-key-gpghome.O681PzEx7r/gpg.1.sh --keyserver keys.gnupg.net --recv-keys 0F164EEB
gpg: keyserver receive failed: Connection refused
其他按键也是同样的情况。我无法添加任何 PPA。
答案1
我在命令行、GPA 和 KGpg 中遇到与 gpg 相同的“gpg 密钥服务器连接被拒绝”错误。我在 Debian Sid 上使用 gnupg 2.1.18-8。我在 dirmngr 中启用了调试,如下所示:
sudo pkill dirmngr; dirmngr --debug-all --daemon --standard-resolver
控制台上的调试输出抱怨缺少 Tor 连接。结果发现“use-tor”在$HOME/.gnupg/dirmngr
. (谢谢,gpgconf!)我将其注释掉,留空dirmngr.conf
,密钥服务器通信现在正常工作。
答案2
当 DNS 解析设置出现问题时,我也发生过这种情况。检查是否列出了名称服务器/etc/resolv.conf
(另外,尝试替代名称服务器)。如果您使用的是systemd-resolved
,请确保它/etc/resolv.conf
是到 的符号链接/run/systemd/resolve/resolv.conf
。
答案3
对于那些在尝试上述解决方案后遇到此错误的人,请确保在密钥服务器地址之前包含 hkp:// 协议前缀。
这对我有用:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0F164EEB
这对我不起作用:
apt-key adv --keyserver keyserver.ubuntu.com:80 --recv-keys 0F164EEB
答案4
原因之一确实是代理问题,请参阅无法在代理后面使用 apt-key 添加 gpg 密钥
你必须使用以下命令:
$ sudo apt-key adv --keyserver hkps://keyserver.ubuntu.com:443 --keyserver-options http-proxy=http://myproxy:3128 --recv-keys 0F164EEB
...或者curl+apt-key的组合