W:GPG 错误:http://ppa.launchpad.net 精确发布:由于公钥不可用,无法验证以下签名:

Ani*_*kur 46 apt keyserver 12.04

当我这样做时,我收到以下错误 sudo apt-get update

W: GPG error: http://ppa.launchpad.net precise Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 6AF0E940624A220
Run Code Online (Sandbox Code Playgroud)

在阅读了这里的各种问题以及谷歌搜索后,我尝试了以下方法。

我试过

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6AF0E1940624A220
Run Code Online (Sandbox Code Playgroud)

它没有帮助。我也试过

sudo gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys
Run Code Online (Sandbox Code Playgroud)

认为端口 11371(默认)可能由于防火墙而被阻止。

我还尝试按如下方式重置所有内容

sudo rm /var/lib/apt/lists/* -vf
sudo apt-get update && sudo apt-get upgrade
Run Code Online (Sandbox Code Playgroud)

我仍然遇到相同的错误或获取更新。我可以尝试任何其他可能的解决方案吗?

Ani*_*kur 79

链接中提到的第二种方法对我有用。手动下载密钥并添加它。希望对其他人也有帮助。


上面的链接提供了带有屏幕截图的详细说明。它还具有一些其他简单的方法,可以在手动执行此操作之前尝试。由于某些地区无法访问它,让我描述一下对我有用的方法:Youtube

  1. 转到OpenPGP 公钥服务器。在那里您可以在该Search String字段中输入您的密钥,保留其他所有内容,然后单击“搜索!”。
    搜索密钥时,请始终在它前面加上0x!这意味着,例如,您必须搜索0x6AF0E1940624A220而不是6AF0E1940624A220
  2. 单击该pub部分中提供的链接。这应该带您进入包含密钥的页面。页面的标题应该类似于Public Key Server -- Get "0x6AF0E1940624A220"
  3. 复制标题下方的所有内容(从 开始-----BEGIN PGP PUBLIC KEY BLOCK-----)并将其保存在文件中(例如key1)。
  4. 获得文件后,运行以下命令

    sudo apt-key add key1
    
    Run Code Online (Sandbox Code Playgroud)

你会得到一个“OK”的回应。

你已经完成了。重复其他可能丢失的键的过程。