在Linux的Ubuntu(以及各种分支如Kubuntu, Lubuntu等)发行体系中,软件库(repositories)是一个非常重要的概念。“用户无需东奔西走,repository里都有”。那么,软件库到底是个什么概念?Univers, Restricted,Multiverse等等库之间又有什么区别?下面这篇文章就带你详细介绍Ubuntu中的各种存储库,以及如何启用或禁用它们。
库的概念
可能你已经知道,在Ubuntu中安装软件,可以使用apt命令。这和Ubuntu软件中心下面的APT软件包管理器是一样的。所以你在软件中心看到的所有软件(除了Snap包之外)基本上都是来自APT。
那么你有没有想过apt程序是从哪里安装程序的?它是如何知道哪些软件包是可用的,哪些不行?
apt基本上都是在库中工作的。库只是一个包含了软件服务器。Ubuntu提供了一套软件仓库,这样你就不用在网上搜索各种需要的软件的安装文件了。这种集中提供软件的方式是使用Linux的主要强项之一。
APT包管理器从/etc/apt/sources.list文件和/etc/apt/sources.list.d目录下的文件中获取软件库信息。仓库信息通常采用以下格式。
deb http://us.archive.ubuntu.com/ubuntu/ bionic main
其实,你可以去上面的服务器地址,看看版本库的结构。
当你使用apt update命令更新Ubuntu时,apt包管理器会从版本库中获取可用包的信息(以及版本信息),并将其存储在本地缓存中。你可以在/var/lib/apt/lists目录下看到这些信息。将这些信息保存在本地可以加快搜索过程,因为你不需要通过网络搜索可用包的数据库,只需检查某个包是否可用。
现在你知道了版本库的重要作用,让我们来看看为啥Ubuntu提供了几个版本库。
Ubuntu中的库的概念
Ubuntu的库分为:主库、Universe库、Multiverse、受限(Restricted)库和合作伙伴(Partner)库。为什么不把所有的软件都放在一个软件库里呢?为了回答这个问题,我们来看看这些软件库都是些什么鬼?
主库
当你安装Ubuntu时,这就是默认启用的库。主软件库中只包含可以不受任何限制地自由发布的自由和开放源码软件。这个库中的软件都是由Ubuntu开发者完全支持的。Ubuntu会提供安全更新,直到你的系统达到使用寿命。
Universe库
该软件库也包括免费和开源软件,但Ubuntu并不保证定期对该类别的软件进行安全更新。这个类别中的软件都是由社区打包和维护的。Universe 软件库中包含了大量的开源软件,因此,你可以通过apt包管理器访问大量的软件。
Multiverse库
Multiverse包含了非自由开源的软件。由于许可和法律问题,Ubuntu不能默认启用这个软件库,也不能提供修复和更新。用户可以自行决定是否要使用Multiverse软件库,并检查您是否有权使用该软件。
受限库
Ubuntu试图只提供免费和开放源码软件,但并不太可能,特别是在提供对硬件的支持时。受限库软件库由专有的驱动程序组成。
伙伴库
该软件库由Ubuntu为其合作伙伴打包的专有软件组成。
第三方软件库和PPA (Ubuntu不提供)
前面五个软件库是由Ubuntu提供的。用户也可以自行决定添加第三方的软件库,以获取更多的软件或者获取较新版本的软件(因为Ubuntu可能会提供相同软件的旧版本)。比如说,如果你添加了VirtualBox提供的库,就可以获得最新版本的VirtualBox。它将在你的source.list中添加一个新的条目。用户还可以使用PPA(个人包存档)安装额外的应用程序。那就是另外一个话题了。
小贴士
尽量不要在你的source.list文件中添加Ubuntu的版本库以外的任何东西。你应该保持这个文件的原始状态,因为如果你把它弄得一团糟,你将无法更新系统,甚至(有时)无法安装新的软件包。
添加Universe、Multiverse和其他库
正如我之前提到的,当你安装Ubuntu时,默认只启用了主软件库。要访问更多的软件,可以添加额外的软件库。
要启用Universe软件库,请使用:
sudo add-apt-repository universe
要启用受限存储库,请使用:
sudo add-apt-repository restricted
要启用 Multiverse 仓库,请使用此命令。
sudo add-apt-repository multiverse
用户必须先添加存储库后使用 sudo apt update 命令,这样系统就可以在本地缓存中创建包信息。
如果你想删除一个版本库,只需像sudo add-apt-repository -r一样添加-r,就可以了。
图形化,进入软件与更新,在这里可以启用版本库。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.