为什么我会收到来自 Ubuntu 存储库的软件包的身份验证错误?

为什么我会收到来自 Ubuntu 存储库的软件包的身份验证错误?

我正在试验 VPN,所以我想安装 pptpd。

john@desktop:~$ sudo apt-get install pptpd
[sudo] password for john: 
<snip>
The following extra packages will be installed:
  bcrelay
The following NEW packages will be installed:
  bcrelay pptpd
0 upgraded, 2 newly installed, 0 to remove and 11 not upgraded.
Need to get 90.5 kB of archives.
After this operation, 442 kB of additional disk space will be used.
Do you want to continue [Y/n]? y

一切都运行良好,直到我到达这里:

WARNING: The following packages cannot be authenticated!
  bcrelay pptpd
Install these packages without verification [y/N]? n
E: Some packages could not be authenticated

没有身份验证?我不是安全专家,但我相当肯定这是一件坏事。所以我检查包裹来自哪里

john@desktop:~$ apt-cache policy pptpd
pptpd:
  Installed: (none)
  Candidate: 1.3.4-3ubuntu1
  Version table:
     1.3.4-3ubuntu1 0
        500 http://us.archive.ubuntu.com/ubuntu/ natty/main i386 Packages
john@desktop:~$ apt-cache policy bcrelay
bcrelay:
  Installed: (none)
  Candidate: 1.3.4-3ubuntu1
  Version table:
     1.3.4-3ubuntu1 0
        500 http://us.archive.ubuntu.com/ubuntu/ natty/main i386 Packages

它们来自 Ubuntu.com,但未经过正确身份验证?这是怎么回事?

答案1

apt-key 实用程序

apt-key 用于管理 apt 用来验证软件包的密钥列表。使用这些密钥验证过的软件包将被视为受信任。使用 Ubuntu 存档密钥的密钥环更新本地密钥环,并从密钥环中删除不再有效的存档密钥。

$ sudo apt-key update
$ sudo apt-get update

尝试安装一些东西...

答案2

sudo apt-get update

足以帮我解决这个问题。

答案3

我在 Ubuntu 12.10 (Quantal Quetzal) 上遇到了这个问题。如果我尝试使用 Synaptic 包管理器 GUI,也会出现同样的问题。

事实证明,我的系统仍设置为使用代理服务器,因为我不再连接到该网络,因此无法再使用。一旦我禁用代理服务器,apt就能够正确验证软件包。

为了禁用 Ubuntu 12.10(Quantal Quetzal)上的代理,请按照以下步骤操作:

  1. 极好的键盘上的按钮(又称 Windows 徽标按钮)
  2. 类型网络然后按 Enter 键
  3. 选择网络代理
  4. 将方法更改为没有任何
  5. 点击应用系统范围
  6. apt现在应该能够验证包

答案4

警惕企业代理!

我在使用代理时获取了WARNING: The following packages cannot be authenticated!openjdk-7-jdk以及其他软件包)。即使使用代理配置了“/etc/apt/apt.conf”和“Settings->NetworkSettings”,也无法验证或安装软件包。

已尝试(在代理之后): $ sudo apt-key update $ sudo apt-get update

密钥未更新,apt-get update更新了一些东西,没有警告或错误。但我仍然无法安装openjdk-7-jdk

解决方案:

  1. 直接连接到网络(即避免使用公司代理)
  2. 在“设置”中关闭代理配置,然后/etc/apt/apt.conf
  3. sudo apt-key update
  4. sudo apt-get update
  5. sudo apt-get install openjdk-7-jdk

软件包已经过验证、下载并安装。

相关内容