使用Ubuntu软件中心或命令行实用程序(例如apt
或apt-get
)安装软件包时,这些软件包是从一个或多个apt软件存储库中下载的。 APT存储库是一个网络服务器或本地目录,其中包含可被APT工具读取的deb包和元数据文件。
尽管默认的Ubuntu存储库中有成千上万的应用程序可用,但有时您可能需要从第三方存储库中安装软件。
在本教程中,我们将向您展示两种在Ubuntu和Debian系统上添加apt仓库的方法。第一种方法是使用add-apt-repository
命令,第二种方法是使用文本编辑器手动添加存储库。
Apt源
在Ubuntu和所有其他基于Debian的发行版中,apt软件存储库在/etc/apt/sources.list
文件中或在/etc/apt/sources.list.d/
目录下的单独文件中定义。
/etc/apt/sources.list.d/
目录中的存储库文件的名称必须以.list
结尾。
/etc/apt/sources.list
文件的常规语法采用以下格式:
- 该行的第一个条目定义档案的类型。存档类型可以是 deb 或 deb-src 。 Deb表示存储库包含
.deb
个软件包,而deb-src表示源软件包。 - 第二个条目是存储库URL。
- 第三个条目指定分发代码名称,例如beaver ,xenial等。
- 最后一个条目是存储库组件或类别。默认的Ubuntu存储库分为四个部分-主组件,受限组件,Universe和multiverse。通常,第三方存储库只有一个类别。
/etc/apt/sources.list.d/
目录下文件的格式与常规sources.list
文件相同。
大多数存储库都提供公钥,以对需要下载和导入的已下载软件包进行身份验证。
要添加或删除存储库,您需要以具有 sudo访问权限或root用户的身份登录。
通常,有关如何启用特定存储库的说明包含在软件文档中。
正在安装add-apt-repository
(未找到add-apt-repository命令)
add-apt-repository
是Python脚本,允许您将APT存储库添加到/etc/apt/sources.list
或/etc/apt/sources.list.d
目录中的单独文件中。该命令还可以用于删除已经存在的存储库。
如果您的系统上没有add-apt-repository
,您会收到一条错误消息,提示“找不到add-apt-repository命令”。
add-apt-repository
实用程序包含在software-properties-common
程序包中。要安装它,请运行以下命令:
使用add-apt-repository
添加存储库
add-apt-repository
命令的基本语法如下:
其中repository
可以是可以添加到sources.list
文件(例如deb http://repo.tld/ubuntu distro component
)的常规存储库条目,也可以是ppa:<user>/<ppa-name>
格式的PPA存储库。
要在终端中查看add-apt-repository
命令类型man add-apt-repository
的所有可用选项。
默认情况下,如果导入了存储库公钥,则在ubuntu 18.04及更高版本上,add-apt-repository
也会更新包索引。
软件包索引是一个数据库,其中包含系统中启用的存储库中可用软件包的记录。
假设您要从其官方存储库中安装MongoDB 。
首先导入存储库公钥:
使用以下命令添加MongoDB存储库。
资源库将添加到sources.list
文件中。
您现在可以从新启用的存储库中安装任何软件包:
如果出于任何原因要删除先前启用的存储库,请使用--remove
选项:
添加PPA存储库
个人软件包档案(PPA)是一项服务,允许用户上传使用Launchpad构建和发布的Ubuntu源软件包作为apt信息库。
添加PPA存储库时,add-apt-repository
命令在/etc/apt/sources.list.d/
目录下创建一个新文件。
例如,要添加提供 FFmpeg 版本4.x的Jonathon F的PPA,您可以运行:
出现提示时,按Enter
,将启用存储库。
PPA存储库公钥将自动下载并注册。
将PPA添加到系统后,您可以安装存储库软件包:
apt
命令将安装软件包及其所有依赖项。
手动添加存储库
如果您想进一步控制来源的组织方式,可以手动编辑/etc/apt/sources.list
文件,并将apt信息库行添加到该文件中。
为演示,我们将启用CouchDB存储库并安装软件。 CouchDB 是由Apache Software Foundation维护的免费且开源的容错NoSQL数据库。
要添加存储库,请使用文本编辑器打开sources.list
文件:
将存储库行添加到文件末尾:
/etc/apt/sources.list
除了使用文本编辑器编辑文件外,还可以使用以下命令将存储库行追加到sources.list
文件中:
$(lsb_release -cs)
将打印Ubuntu代号。例如,如果您具有 Ubuntu版本 18.04,该命令将显示bionic
。
另一个选项是在/etc/apt/sources.list.d/
目录下创建一个新的存储库文件。
手动配置存储库时,您还需要手动将公共存储库密钥导入系统。为此,请使用 wget
或 curl
:
上面的命令应该输出OK
,这意味着已成功导入GPG密钥,并且该存储库中的程序包将被视为受信任。
在从新添加的存储库中安装软件包之前,您必须更新软件包索引:
更新软件包索引后,您可以从新添加的存储库中安装软件包:
结论
我们已向您展示了如何在Ubuntu中添加apt信息库。相同的说明适用于任何基于Debian的发行版,包括Kubuntu,Linux Mint和Elementary OS。
如有任何疑问,请随时发表评论。