如何在服务器上添加 PPA?

Lui*_*ado 162 server ppa

Ubuntu的服务器版本没有该add-apt-repository命令。如何在没有此命令的情况下将个人包存档(PPA) 添加到服务器?

Mar*_*ell 198

您可以简单地添加add-apt-repository命令。在 13.10 及更高版本中,您还需要运行以下命令:

sudo apt-get install software-properties-common
Run Code Online (Sandbox Code Playgroud)

旁注:在 11.04 中,他们添加了一个符号链接,add-apt-repository以便它可以运行,apt-add-repository这对我来说更有意义。其他一切 apt 都以“apt”开头。

注意:它是python-software-properties软件包的一部分(13.10 之前):

sudo apt-get install python-software-properties
Run Code Online (Sandbox Code Playgroud)

  • 如果已经安装了“python-software-properties”,并且在尝试使用“apt-add-repository”时仍然出现“command not found”怎么办? (5认同)

Jo-*_*tad 75

让我教你如何钓鱼。apt-file使您能够找出哪个包提供了给定的文件。dpkg -S做同样的事情,但仅适用于已安装的软件包。apt-file无论软件包是否已安装,都可以工作。

所以,首先你安装 apt-file: sudo apt-get install apt-file。然后你需要更新它的信息,就像你必须使用 apt-get: 一样sudo apt-file update。现在可以使用了:

$ apt-file search add-apt-repository
python-software-properties: /usr/bin/add-apt-repository
python-software-properties: /usr/share/man/man1/add-apt-repository.1.gz
Run Code Online (Sandbox Code Playgroud)

因此,在这种情况下,接下来要做的是安装 python-software-properties。

  • 由于这个提示,我发现在 12.10 服务器中 apt-add-repository 位于 software-properties-common (不再在 python-software-properties 中) (9认同)
  • 很好的提示 - 也许不应该被埋在这个问题中 - 一个单独的问题将是一个好主意来强调这一点。 (4认同)

Bro*_*oam 56

这不一定是最好的答案,但这会起作用:

老式的编辑方式(他们称之为 Ubuntu 9.10 之前)/etc/apt/sources.list仍然有效。您还需要手动获取系统上的 GPG 密钥。

在较旧的(9.10 之前)Ubuntu 系统上:

第 1 步:在 Launchpad 中访问 PPA 的概述页面。查找标题为“将此 PPA 添加到您的系统”,然后单击“有关此 PPA 的技术详细信息”链接。

第 2 步:使用 Display sources.list 条目下拉框选择您正在使用的 Ubuntu 版本。

第 3 步:您会看到正下方的文本框显示如下内容:

deb http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu jaunty main
Run Code Online (Sandbox Code Playgroud)

复制这些行。

第 4 步:打开终端并输入:

sudo gedit /etc/apt/sources.list
Run Code Online (Sandbox Code Playgroud)

这将打开一个文本编辑器,其中包含您的系统当前正在使用的档案列表。滚动到文件底部并粘贴您在上述步骤中复制的行。

保存文件并退出文本编辑器。

第 5 步:返回 PPA 的概览页面,查找 Signing key 标题。你会看到类似的东西:

1024R/72D340A3(这是什么?)

复制斜杠后的部分,但不包括帮助链接;例如只是 72D340A3。

第 6 步:现在您需要将该密钥添加到您的系统中,以便 Ubuntu 可以验证来自 PPA 的软件包。在您的终端中,输入:

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

(用您在步骤 5 中复制的任何内容替换 72D340A3。)

现在,这将拉下 PPA 的密钥并将其添加到您的系统中。

第 7 步:现在,作为一次性,您应该告诉您的系统从它知道的每个存档中提取最新的软件列表,包括您刚刚添加的 PPA:

sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

现在您已准备好开始从 PPA 安装软件!

  • software-properties-common 包是巨大的,对于仅将一些文本附加到文件并运行几个命令来说似乎太多了。在Docker中使用时如此浪费空间。这个答案非常有帮助! (4认同)
  • 这应该是公认的答案,因为 OP 询问如何使用 add-apt-repository 解决*不*... (3认同)

fos*_*dom 15

add-apt-repository由包提供python-software-properties

因此,如果您应该通过安装

sudo apt-get install python-software-properties
Run Code Online (Sandbox Code Playgroud)

  • 同意不合逻辑 - 至于为什么,您可以推测服务器在运行软件方面通常是“固定的”。因此,您不需要频繁添加和删除存储库的“奢侈”……推测结束! (2认同)

小智 15

运行此命令:

sudo apt-get install software-properties-common
Run Code Online (Sandbox Code Playgroud)

然后你可以添加你的存储库运行:

sudo add-apt-repository [REPOSITORY]
Run Code Online (Sandbox Code Playgroud)

Renember 替换[REPOSITORY]为您要添加的存储库名称。