我使用的是 Ubuntu 9.10,需要添加一些 apt 存储库。不幸的是,我在运行时收到这样的消息sudo apt-get update:
W: GPG error: http://ppa.launchpad.net karmic Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5A9BF3BB4E5E17B5
W: GPG error: http://ppa.launchpad.net karmic Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 1DABDBB4CEC06767
Run Code Online (Sandbox Code Playgroud)
因此,我需要为这些存储库安装密钥。在 9.10 下,我们现在可以选择这样做:
sudo add-apt-repository ppa:nvidia-vdpau/ppa
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅此 Ubuntu 帮助文章。
这很棒,只是我在防火墙后面的工作站上运行它,该防火墙阻止了几乎所有端口的出站连接,除了运行 Windows 和 IE 的秘书所需的端口。
这里有问题的端口是 hkp 服务,端口 11371。
似乎有办法手动下载密钥并将它们安装在 apt 的密钥环上。甚至可能有一种方法可以使用 add-apt-repository 或 wget 或其他东西从替代服务器下载密钥,使其在端口 80 上可用。
但是,我还没有找到一套简洁的步骤来这样做。我正在寻找的是:
提前致谢。
小智 39
这已在即将推出的 Natty Ubuntu 版本中修复:https : //launchpad.net/ubuntu/natty/+source/software-properties/0.78.1
使用旧版本的用户需要编辑 ppa.py:
sudo gedit /usr/lib/python2.6/dist-packages/softwareproperties/ppa.py
Run Code Online (Sandbox Code Playgroud)
它在哪里说:
keyserver.ubuntu.com
Run Code Online (Sandbox Code Playgroud)
改成:
hkp://keyserver.ubuntu.com:80
Run Code Online (Sandbox Code Playgroud)
保存,退出,然后你就可以开始了。
小智 19
sudo apt-key adv --keyserver keyserver.ubuntu.com --keyserver-options http-proxy=http://proxy:port --recv-keys KEYID
Run Code Online (Sandbox Code Playgroud)
Kie*_*ief 13
这是我使用的一种解决方法:
我在公司防火墙之外的自由世界中登录了一台 linux 服务器,并执行了以下操作:
gpg --keyserver keyserver.ubuntu.com --recv 1DABDBB4CEC06767 && gpg --export --armor 1DABDBB4CEC06767
Run Code Online (Sandbox Code Playgroud)
然后在我的工作站上,我运行了这个,并将上面命令的输出(公钥)粘贴到标准输入中,然后是 control-D:
sudo apt-key add -
Run Code Online (Sandbox Code Playgroud)
然后我就可以sudo apt-get update毫无问题地运行了。
我仍然认为必须有更好的方法,最好是我可以编写的脚本。
小智 8
我这里有另一种解决方法,如果您无法在网络外找到另一台 linux 服务器作为代理,这可能会很方便。只需向“pgp-public-keys@pgp.mit.edu”发送一封电子邮件,主题为“get 0x1DABDBB4CEC06767”。但是您可能仍然无法编写一个简单的脚本来自动执行此操作。
小智 5
您可以访问密钥服务器的网站,例如http://wwwkeys.eu.pgp.net/ 搜索密钥签名(您需要在十六进制签名中添加 0x)即 0x1DABDBB4CEC06767。
单击您希望获得的链接并将文本粘贴到机器上的文件中,即
cat > <filename>
[PASTE]
[Ctrl-C]
Run Code Online (Sandbox Code Playgroud)
然后
apt-key add <filename>
Run Code Online (Sandbox Code Playgroud)
这对我来说很好;看来我的工作代理阻止了很多“非标准”端口。
| 归档时间: |
|
| 查看次数: |
45960 次 |
| 最近记录: |