运行‘yay’时出现“gpg:密钥服务器接收失败:没有到主机的路由”错误

运行‘yay’时出现“gpg:密钥服务器接收失败:没有到主机的路由”错误

我对 Arch Linux 还不太熟悉,正在尝试更新我的软件包。我正在运行最新版本的 Antergos。

使用yay不带参数的方法时,大部分情况下都运行良好,直到出现以下情况:

==> PGP keys need importing: -> 474E22316ABF4785A88C6E8EA2C794A986419D8A, required by: libc++ (libc++abi libc++) ==> Import? [Y/n] :: Importing keys with gpg...... gpg: keyserver receive failed: No route to host ==> Error: Problem importing keys

经过几个小时的搜索,我真正找到的解决方案是切换到 Google DNS。然而,在尝试了 Google 和 Cloudflare 之后,这种情况仍然会发生。

答案1

我刚刚发现了同样的问题。@eschwartz 的回答表明,在我的 PC 上,PGP 密钥服务器是通过其 IPv6 访问的。我不知道为什么,而且我从未将 IPv6 范围设为全局。

对我来说,解决方案是从另一个密钥服务器获取所需的密钥,如下所示:

gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys iNsErThErEtHeFiNgErPrInToFtHeKeYyOuNeEd

答案2

尝试使用命令gpg-connect-agent --dirmngr 'keyserver --hosttable' /bye检查当前正在使用的密钥服务器池。您可能会发现您无法真正 ping 到您尝试访问的密钥服务器。

最可能的原因是网络配置问题,例如 GnuPG 可能认为您有一个(部分配置的)IPv6 连接,但实际上该连接已损坏,因此倾向于使用该连接。

然后将您的密钥服务器更改为您可以连接的密钥服务器。

相关内容