当前位置: 首页>>技术教程>>正文


为什么我从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

没有认证?我不是安全专家,但我确信这是一件坏事。所以我check to see where the packages are coming from

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,没有正确认证?这里发生了什么?

最佳解决办法

apt-key实用程序

apt-key用于管理apt用于验证软件包的密钥列表。已经使用这些密钥验证的软件包将被视为可信。使用Ubuntu归档密钥的密钥环更新本地密钥环,并从密钥环中移除不再有效的归档密钥。

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

尝试安装…

次佳解决办法

sudo apt-get update

足以为我解决它。

第三种解决办法

我在Ubuntu 12.10(Quantal Quetzal)上遇到了这个问题。如果我尝试使用Synaptic Package Manager GUI,则会发生同样的问题。

事实证明,我的系统仍然设置为使用代理服务器来连接我不再连接的网络,因此无法继续使用。一旦我禁用了代理服务器,apt就能够正确认证这些软件包。

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

  1. 按下键盘上的超级按钮(A.K.A. Windows徽标按钮)

  2. 键入网络并按Enter键

  3. 选择网络代理

  4. 将方法更改为无

  5. 点击应用系统宽带

  6. apt现在应该能够对软件包进行身份验证

第四种办法

注意公司代理人!

我在openjdk-7-jdk(包括其他软件包)中获得WARNING: The following packages cannot be authenticated!,而坐在代理之后。即使使用Proxy配置配置`/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

包被认证,下载和安装。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/251.html,未经允许,请勿转载。