如何在服务器上添加PPA?
Ubuntu的服务器版本没有add-apt-repository
命令。 如何在没有此命令的情况下将个人包存档 (PPA)添加到服务器?
您只需添加add-apt-repository
命令即可。 在13.10及更高版本中,您还需要运行此命令:
sudo apt-get install software-properties-common
旁注:在11.04,他们为add-apt-repository
添加了一个符号链接,因此它可以作为apt-add-repository
运行,这对我来说更有意义。 其他一切都以“apt”开头。
注意:它是python-software-properties
包的一部分(在13.10之前):
sudo apt-get install python-software-properties
我来教你如何钓鱼。 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
因此,在这种情况下,接下来要做的就是安装python-software-properties。
它不一定是最好的答案,但这将起作用:
编辑/etc/apt/sources.list
的老式方式(在Ubuntu 9.10之前,他们称之为)仍然有效。 您还需要手动获取系统上的GPG密钥。
在旧的(9.10之前的)Ubuntu系统上:
第1步:访问Launchpad中的PPA概述页面。 查找将此PPA添加到系统的标题,然后单击有关此PPA链接的技术详细信息。
步骤2:使用Display sources.list entries下拉框选择您正在使用的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
复制这些行。
第4步:打开终端并输入:
sudo gedit /etc/apt/sources.list
这将打开一个文本编辑器,其中包含系统当前使用的存档列表。 滚动到文件底部并粘贴您在上面的步骤中复制的行。
保存文件并退出文本编辑器。
步骤5:返回PPA的概述页面,查找签名密钥标题。 你会看到类似的东西:
1024R / 72D340A3(这是什么?)
复制斜杠后的部分,但不包括帮助链接; 例如只是72D340A3。
步骤6:现在您需要将该密钥添加到系统中,以便Ubuntu可以validationPPA中的软件包。 在您的终端中,输入:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 72D340A3
(将72D340A3替换为您在步骤5中复制的任何内容。)
现在,这将下拉PPA的密钥并将其添加到您的系统中。
步骤7:现在,作为一次性,您应该告诉您的系统从其知道的每个存档中下载最新的软件列表,包括您刚刚添加的PPA:
sudo apt-get update
现在您已准备好开始从PPA安装软件了!
add-apt-repository
由python-software-properties
包提供。
因此,如果你应该安装通过
sudo apt-get install python-software-properties
运行此命令:
sudo apt-get install software-properties-common
然后您可以添加运行的存储库:
sudo add-apt-repository [REPOSITORY]
Renember将[REPOSITORY]
替换为您要添加的存储库名称。
几周前,我与一位同事就此进行了辩论。 给
apt-add-repository
一试。 不需要任何其他包。 请注意,apt在添加之前出现。 订单确实很重要,因为需要安装add-apt-repository。
那些反对者在那里。 试试这个Vagrant文件。 请注意,我从一个新的可靠图像开始,并开箱即用添加ppa。
# -*- mode: ruby -*- # vi: set ft=ruby : # All Vagrant configuration is done below. The "2" in Vagrant.configure # configures the configuration version (we support older styles for # backwards compatibility). Please don't change it unless you know what # you're doing. Vagrant.configure(2) do |config| config.vm.box = "ubuntu/trusty64" config.ssh.username = "vagrant" config.vm.provision "shell", inline: <<-SHELL sudo apt-add-repository ppa:george-edison55/cmake-3.x -y sudo apt update sudo apt upgrade sudo apt install -y virtualbox-guest-dkms sudo apt-get install -y curl g++ libpng12-dev \ libtiff5-dev libssl-dev libxml2-dev libxslt1-dev libpq-dev postgresql-client \ postgresql pgadmin3 liblcms2-dev libcrypto++9 libcrypto++-dev \ graphviz-dev libboost1.55-dev libboost-filesystem1.55-dev libboost-system1.55-dev \ libexpat1-dev python-software-properties qtbase5-dev qttools5-dev \ libqt5svg5-dev qtscript5-dev qtdeclarative5-dev qtmultimedia5-dev \ libsqlite3-dev qt5-default cmake SHELL end
更新:只是为了澄清,看起来ubuntu的云图像精确,并且已经安装了正确的软件包。 因此,无论我们是在讨论cloud-init脚本还是流浪文件,都会出现apt-add-repository。 因为add-apt-repository在同一个包中也应该可以工作。