APT存储库是网络服务器或本地目录,其中包含deb软件包和元数据文件,这些文件可由APT工具读取。

虽然默认的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 http://repo.tld/ubuntu distro component...行中的第一个条目定义归档的类型,归档类型可以是deb或deb src,Deb意味着存储库包含.deb包,而Deb src则意味着源包第二个条目是存储库URL第三项指定分发代码名称,如beaver,xenial等最后的条目是存储库组件或类别,默认的Ubuntu存储库分为四个组件-main, restricted, 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 command not found"

add-apt-repository实用程序包含在software-properties-common包中,安装它运行以下命令:sudo apt updatesudo apt install software-properties-common

使用add-apt-repository添加存储库

add-apt-repository命令的基本语法如下:add-apt-repository [options] repository

其中repository可以是可以添加到sources.list文件中的常规存储库条目,如下所示deb http://repo.tld/ubuntu distro component 或PPA存储库中ppa:/ 格式。

要查看add-apt-repository命令的所有可用选项,请在终端中键入man add-apt-repository。

默认情况下,在ubuntu 18.04和更新版本上,如果导入存储库公钥,add-apt-repository将更新包索引,

package index是一个数据库,它保存系统中启用的存储库中可用包的记录。

假设您要从其官方存储库安装MongoDB。

首先导入存储库公钥:sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

使用下面的命令添加MongoDB存储库。sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

存储库被追加到sources.list文件。

现在可以从新启用的存储库安装软件包:sudo apt install mongodb-org

如果需要删除以前启用的存储库,请使用--remove选项:sudo add-apt-repository --remove 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

添加PPA存储库

个人软件包档案(PPA)是一项服务,允许用户上传使用Launchpad构建和发布的Ubuntu源软件包作为apt存储库。

添加PPA存储库时,add-apt-repository命令将在/etc/apt/sources.list.d/目录下创建一个新文件。

例如,要添加提供FFmpeg版本4.x的Jonathon F 's PPA,请运行:sudo add-apt-repository ppa:jonathonf/ffmpeg-4

当提示按Enter时,系统信息库被启用。Press [ENTER] to continue or Ctrl-c to cancel adding it.

PPA存储库公钥将自动下载并注册。

将PPA添加到系统后,就可以安装存储库软件包:sudo apt install ffmpeg

命令将安装包及它所有依赖项。

手动添加存储库

如果想对源代码的组织方式有更多的控制,你可以手动编辑/etc/apt/sources.list文件,并将apt存储库行添加到文件,

为了演示,启用CouchDB存储库并安装软件,CouchDB是一个免费的开源容错NoSQL数据库,由Apache Software Foundation维护。

要添加存储库,请使用文本编辑器打开sources.list文件:sudo nano /etc/apt/sources.list

将存储库行添加到文件的末尾:/etc/apt/sources.listdeb https://apache.bintray.com/couchdb-deb bionic main

你可以使用以下命令将存储库行添加到sources.list文件,而不是使用文本编辑器编辑文件:echo "deb https://apache.bintray.com/couchdb-deb $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list

$(lsb_release -cs)将打印Ubuntu代码名,例如,如果你具有Ubuntu 18.04版本,那么这个命令将显示bionic。

另一个选项是在/etc/apt/sources.list.d/目录下创建新的存储库文件。

手动配置存储库时,还需要手动将公共存储库密钥导入系统,为此,可以使用wget或curl:curl -L https://couchdb.apache.org/repo/bintray-pubkey.asc | sudo apt-key add -

上面的命令应该输出OK,这意味着GPG密钥已经成功导入,并且这个存储库中的包被认为是可信的。

在从新添加的存储库安装包之前,你必须更新包索引:sudo apt update

更新包索引后,可以从新添加的存储库安装包:sudo apt install couchdb

结论

我们向你展示了如何在Ubuntu中添加apt存储库,同样的说明适用于基于Debian的发行版,包括Kubuntu,Linux Mint和Elementary OS。

有问题请随时留言。

ubuntu导入第三方库_在Ubuntu中,如何添加Apt存储库相关推荐

  1. ubuntu导入第三方库_ubuntu用户切换、配置Python开发环境与所需的第三方库

    一.用户切换 普通用户切换到root用户 登录ubuntu后,按上组合键CTRL+ALT+T进入终端界面,一般终端界面默认为普通用户权限模式,如何从普通用户进入root用户,有如下方法: 1.按上su ...

  2. ubuntu导入第三方库_1.Ubuntu目录与第三方库

    1.Ubuntu目录 一./:目录属于根目录,是所有目录的绝对路径的起始点,Ubuntu 中的所有文件和目录都在跟目录下. 二./etc:(and so on的意思,来源于法语)此目录非常重要,绝大多 ...

  3. 下列哪个不是python的第三方库_以下选项中,不是 Python 中用于开发用户界面的第三方库是()...

    [单选题]关于栓子的运行下列说法错误的是? [简答题]变压器可以按哪几个方面分类?分别举例说明. [单选题]坏死组织外观干燥,质实.呈灰白色,结构消失组织轮廓一段时间存在是指? [简答题]购物车:有商 ...

  4. python网络爬虫的第三方库_以下选项中,Python网络爬虫方向的第三方库是A.()scrapy()B.()numpy()C.()openpyxl()D.()PyQt5...

    [填空题] 水泥浆体由初凝到终凝的过程称为水泥的(). [单选] 肝脏是人体最大的实质性器官,其重量约() [填空题] 由箭线.节点和线路组成的,用来表示工作流程的有序.有向的网络叫做(). [判断题 ...

  5. Android Studio中导入第三方库

    之前开发Android都是使用的eclipse,近期因为和外国朋友Timothy一起开发一款应用,他是从WP平台刚切换使用Android的,使用的开发环境时Android Studio,为了便于项目的 ...

  6. flutter导入第三方库

    在pubspec.yaml 文件中找到 dependencies 在里面填写 第三方库即可 例如图中我写了fluttertoast库 特别注意:导入的位置要不dependencies下面的flutte ...

  7. AS导入第三方库方法和PullToRefresh的简单使用

    文章目录 AS导入第三方库方法 1.下载或克隆 2.在AS中创建Library模块 3.修改库文件 4.将Library模块main中的文件替换 5.编译找问题 6.将项目和库进行关联 PullToR ...

  8. android studio 导入第三方库的记录

    android studio 导入第三方库的记录.jar包 和 库 一.jar包 1.jar包的话很简单,首先换成project模式,将你要用的jar包复制到lib下面.如图 2.然后右键选择Add ...

  9. linux设置默认终端模拟器,ubuntu终端默认设置_在Ubuntu Linux上设置默认终端模拟器...

    ubuntu终端默认设置_在Ubuntu Linux上设置默认终端模拟器 ubuntu终端默认设置_在Ubuntu Linux上设置默认终端模拟器 ubuntu终端默认设置 Ubuntu has a ...

最新文章

  1. C语言实现离散余弦变换(DCT)并用MATLAB和Python验证
  2. 股票系列,动态规划,加油,九月太浪了,十月不许浪
  3. 学爬虫,需要掌握哪些Python基础?
  4. android studio升级版本,导入项目出错
  5. Sqlite大数据量查询优化比较-转
  6. 学会python能做什么-学会python可以做什么
  7. CDOJ 485 UESTC 485 Game (八数码变形,映射,逆cantor展开)
  8. 计算机cmd卸载软件,一招让你学会,在win10命令提示符上卸载程序
  9. 计算机图形学入门知识
  10. 多组学联合分析整体思路
  11. python骂人的程序_让你的python程序尖叫起来
  12. 计算机网络速度测试指令,测试网速命令_在电脑的运行中输入什么指令 测网速...
  13. 虚拟创业云|宝妈和大学生兼职和手机网赚兼职的任务平台大全
  14. 谷歌seo外链预算方案,影响谷歌反向链接成本的因素
  15. 【ACWing】2135. 马步距离(配数学证明)
  16. 第四十六章 Caché 变量大全 ^$GLOBAL 变量
  17. SVN客户端安装和服务器搭建
  18. bscroll.js实现html手机端城市列表
  19. 难,难,难,如何把握分寸感?
  20. 冯雪 手术机器人的应用_“达芬奇”手术机器人在我院的应用收获众多医生的热烈反响...

热门文章

  1. 在Chrome开发者工具里观察到的SAP Spartacus productCodes
  2. SAP WebClient UI component模型元数据解析工具
  3. JSP和Servlet里的Cookie处理
  4. SAP gateway standard mode和compatible mode的区别
  5. Fiori elements执行过程解析:When click go in table list, odata service is sent
  6. UI5 setBusyIndicatorDelay
  7. SAP odata消费失败的故障排错
  8. 如何通过Fiori后台调试的方式找到gateway系统的ID
  9. SAP CRM呼叫中心的轮询设置CRMCMP_IC_FRAME SAM queue receiver
  10. Cloud for Customer Restriction and Exclusion Product Lists