use*_*159 3 package-management apt ppa deb
我们以https://launchpad.net/~ansible/+archive/ubuntu/ansible为例。如果您单击“有关此 PPA 的技术详细信息”,您会看到:
Signing key:
4096R/7BB9C367
Fingerprint:
6125E2A8C77F2818FB7BD15B93C4A3FD7BB9C367
Run Code Online (Sandbox Code Playgroud)
如果您尝试添加该软件而不添加您获得的密钥
W: GPG error: http://ppa.launchpad.net trusty Release: The following signatures couldn't
be verified because the public key is not available: NO_PUBKEY 93C4A3FD7BB9C367
Run Code Online (Sandbox Code Playgroud)
当apt-key list我看到4096R/7BB9C367. 要添加我需要做的密钥apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367。而且指纹似乎没有在任何地方提到。
所有这些值之间有什么区别?
apt-key ... --recv-keys如果添加 PPA,为什么我不需要,但如果手动将行添加到 ,我需要/etc/apt/sources.list.d?PPA 如何知道93C4A3FD7BB9C367它需要使用什么,它在哪里找到它?
奖金回合:使用 PPA 与仅添加一行有什么区别/etc/apt/sources.list.d/?这个 PPA 东西“托管”在哪里,只需添加 ppa:ansible/ansible 就足以将该行添加到 sources.list.d?
我将从你的最后一个问题开始。
ppa:ansible/ansible是指 Launchpad PPA 的特殊格式,可用于 Ubuntu 和 Ubuntu 衍生产品(至少)。在功能方面,PPA 只是一个常规的回购。但是,不能将这种确切格式添加到 中/etc/apt/sources.list,因为apt无法识别这种格式。因此,必须添加存储库的 URL。例如,对于URLppa:teamName/archiveName为http://ppa.launchpad.net/teamName/archiveName/ubuntu。
通常,软件更新程序或终端用于添加 PPA。软件更新程序识别 PPA 语法。在终端中,apt-add-repository识别格式,通常用于添加 PPA。这也会获得用于签署回购协议的公钥。如果由于某种原因它不能,你会得到一个类似的警告,你在运行sudo apt-get update.
对于指纹,公钥的完整指纹是公钥的 40 个字符的字母数字表示。Launchpad 显示完整的 40 个字符。但是,输入或记住 40 个字符是困难的,尤其是当有多个公钥时。因此,通常会显示最后 8 或 16 个字符。apt显示指纹的最后 16 个字符,并且apt-key list(gpg在幕后使用)显示最后 8个字符。gpg可以配置显示的格式。
| 归档时间: |
|
| 查看次数: |
2164 次 |
| 最近记录: |