如何在 Ubuntu 20.04 LTS 中使用 APT 包管理器
APT 是基于 Ubuntu/Debian 的 Linux 发行版上的默认包管理器。在本文中,我将向您展示如何在 Ubuntu 20.04 LTS 上使用 APT 包管理器。那么,让我们开始吧。
Ubuntu 软件包存储库:
Ubuntu 软件包存储库基本上是保存所有 deb 软件包的文件服务器。
Ubuntu 有 4 个主要的官方软件包存储库:main、restricted、universe 和 multiverse。
在main存储库中,保留了Ubuntu支持的自由和开源软件。
在受限存储库中,保留专有驱动程序(即 NVIDIA)。
在universe存储库中,保留了社区维护的免费开源软件。
在multiverse存储库中,保留有版权限制或法律问题的软件。
Ubuntu 还有一个名为 partner 的额外软件包存储库。在合作伙伴存储库中,保留了一些专有和闭源软件。
您还可以在 Ubuntu 上添加其他第三方软件包存储库和 PPA 来安装所需的软件包。
Ubuntu 软件包存储库配置文件:
Ubuntu 软件包存储库信息存储在 /etc/apt/sources.list 文件中。第三方 PPA 和其他存储库作为 .list 文件存储在 /etc/apt/sources.list.d/ 目录中。配置文件是纯文本文件。因此,您可以轻松地使用文本编辑器来管理它们。
/etc/apt/sources.list 文件的内容如下面的屏幕截图所示。
此处,以 deb 或 deb-src 开头的每一行都是 APT 软件包存储库行。以#(哈希)开头的行是注释。他们描述了存储库的用途。
APT 软件包存储库行具有以下格式:
这里,
deb 用于定义包含已编译包的存储库。
deb-src 用于定义包含在使用前必须编译的包的源代码的存储库。
deb-src 主要用于开发目的。如果您不是软件开发人员或者不知道这是什么,那么只需使用 deb。
您可以使用以下命令找到 Ubuntu 机器的代号:
对于 Ubuntu 20.04 LTS,
Ubuntu 官方软件包存储库还有更新
您可以将一个或多个
以下是 APT 软件包存储库行的示例:
列出 Ubuntu 启用的软件包存储库:
您可以使用以下命令列出 Ubuntu 操作系统的所有启用的软件包存储库:
/etc/apt/sources.list.d/*.list 2> /dev/null)
如您所见,显示了所有启用的包存储库。
管理官方包存储库:
默认情况下,Ubuntu 官方 main、restricted、universe 和 multiverse 软件包存储库已启用。 合作伙伴存储库未启用。
您可以使用以下命令启用 Ubuntu 官方软件包存储库(例如,受限):
如您所见,restricted 存储库已启用。如果由于某种原因被禁用,它将被启用。
您可以禁用或删除官方受限存储库,如下所示:
如您所见,受限存储库已被禁用。
添加和删除 Ubuntu 合作伙伴存储库:
您可以使用以下命令添加 Ubuntu partner 存储库:
$(lsb_release -cs) partner"
应启用 Ubuntu partner 存储库。
如您所见,Ubuntu partner 存储库已启用。
2> /dev/null)
您还可以使用以下命令删除 Ubuntu partner 存储库:
$(lsb_release -cs) partner"
管理第三方包存储库:
如果 Ubuntu 官方软件包存储库没有您正在寻找的软件/工具,您可以随时在 Ubuntu 上添加第三方软件包存储库和 PPA,并从那里安装您想要的软件/工具。
launchpad 是第三方 Ubuntu PPA 的一个很好的来源。访问 Launchpad Ubuntu PPA 页面并搜索您要查找的软件/工具(即代码块)。
从搜索结果中,您可以找到所需软件/工具的第三方 PPA 存储库。单击您喜欢的 PPA 链接。我选择了 Codeblocks Daily Builds PPA 进行演示。
PPA 应该包含有关如何从 PPA 安装内容的说明,如下面的屏幕截图所示。只需遵循 PPA 特定安装说明即可。
例如,Codeblocks 每日构建 PPA 会告诉您运行 3 个命令来安装 Codeblocks 每日构建。
$ sudo apt-get update
$ sudo apt-get install codeblocks codeblocks-contrib
这里,使用以下命令将 PPA 添加到您的 Ubuntu 操作系统:
要确认,请按
应添加 PPA,并且还应更新 APT 包存储库缓存。
就我而言,PPA 无法工作,因为它还不支持 Ubuntu 20.04 LTS。但已经添加了。
如您所见,PPA 存储库已添加到我的 Ubuntu 计算机中。
/etc/apt/sources.list.d/*.list 2> /dev/null)
如果需要,可以使用以下命令删除 PPA:
要确认删除操作,请按
应移除 PPA。如您所见,PPA 不再位于 /etc/apt/sources.list 文件或 /etc/apt/sources.list.d/ 目录中。
/etc/apt/sources.list.d/*.list 2> /dev/null)
一些第三方软件(例如 Docker、MongoDB)可能会提供 APT 软件包存储库行,您可以在 Ubuntu 上添加它来安装它。
例如,Docker 的官方 APT 包存储库行可能如下所示:
这里,focal 是 Ubuntu 20.04 LTS 的
要添加此存储库,请运行以下命令:
$(lsb_release -cs) stable"
此处,$ (lsb_release -cs) 将替换为您的 Ubuntu 版本的
应添加 Docker 官方包存储库。
忽略错误。 Docker 尚不支持 Ubuntu 20.04 LTS。我只是用它来演示如何在 Ubuntu 上添加/删除第三方包存储库。
如您所见,Docker 包存储库已添加。
/etc/apt/sources.list.d/*.list 2> /dev/null)
要删除第三方软件包存储库,请使用以下命令列出所有启用的软件包存储库:
/etc/apt/sources.list.d/*.list 2> /dev/null)
然后,复制要从列表中删除的 APT 软件包存储库行。
然后,删除第三方包存储库,如下所示:
/linux/ubuntu focal stable"
如您所见,第三方软件包存储库不再位于启用的软件包存储库列表中。
/etc/apt/sources.list.d/*.list 2> /dev/null)
更新包存储库缓存:
添加新的 APT 软件包存储库后,运行以下命令来更新 APT 软件包存储库缓存:
应更新 APT 包存储库缓存。
列出已安装的软件包:
您可以使用以下命令列出 Ubuntu 计算机上安装的所有软件包:
所有已安装的软件包(即 acl、acpi-support)、软件包版本(即 2.2.53-6、0.143<),包架构(即 amd64)应该被列出,如下面的屏幕截图所示。名单很长。
列出可升级包:
如果您想列出 Ubuntu 计算机上安装的软件包,但软件包存储库中有较新版本(更新),请运行以下命令:
如您所见,列出了所有具有可用更新(较新版本)的软件包。我将在本文的后面部分向您展示如何安装这些更新。
搜索包:
您可以通过包名称、包描述等搜索包。您也可以使用正则表达式来搜索包。
例如,您可以搜索所有可用的文本编辑器软件包,如下所示:
如您所见,列出了与搜索查询文本编辑器匹配的软件包。名单很长。我在这里只展示了列表的一小部分。
这里,绿色文本代表包名称,您可以使用它在 Ubuntu 计算机上安装包。
您还可以使用正则表达式来搜索包。
例如,您可以搜索以 node- 开头的包,如下所示:
如果您有兴趣了解有关任何特定包(即 nodejs)的更多信息,您可以运行以下命令:
可以看到,显示了很多关于nodejs包的信息。
这里,
包名称是nodejs。
该软件包版本为10.19.0~dfsg-3ubuntu1。
该软件包来自 universe 存储库的 web Section。
安装后,该软件包将使用 158 KB 磁盘空间 (安装大小)。
它取决于libc6和libnode64软件包。
该项目的主页是http://nodejs.org。
软件包下载大小为61.1 KB。
该软件包来自 http://us.archive.ubuntu.com/ubuntu focus/universe amd64 Packages 存储库 (APT-Sources) 等。
说明部分描述了该包的用途。
如果您愿意,还有更多信息可以阅读
从启用的包存储库安装包:
找到要安装的一个或多个软件包后,您可以轻松地将它们安装到您的 Ubuntu 计算机上。
您可以安装单个包(即 nodejs),如下所示:
如您所见,安装此包将安装3多个依赖包。总共将安装 4 个新软件包。您必须从 Internet 下载大约 6,807 KB 的包文件。安装软件包后,将消耗大约 30.7 MB 的额外磁盘空间。
要确认安装,请按Y,然后按
如您所见,正在从互联网下载所需的软件包。
此时,应该安装软件包。
您还可以同时安装多个软件包(即 filezilla、apache2、vsftpd),如下所示:
要确认安装,请按Y,然后按
正在从互联网下载所需的软件包。
此时,所有软件包都应该已安装。
安装第三方DEB包:
您可以使用 APT 包管理器在 Ubuntu 计算机上安装第三方 DEB 包 (.deb) 文件。如果第三方 DEB 包有任何依赖项,APT 包管理器也会尝试解决它们。
例如,我从Visual Studio Code官网下载了Visual Studio Code DEB包文件。 DEB 包文件 code_1.44.2-1587059832_amd64.deb 位于 ~/Downloads 目录中,如下面的屏幕截图所示。
现在,您可以使用 APT 包管理器安装 DEB 包文件 code_1.44.2-1587059832_amd64.deb,如下所示:
应安装 DEB 包文件。
安装特定的软件包版本:
一个包在包存储库中可能有多个版本。如果需要,您可以安装该软件包的特定版本。
您可以使用以下命令查找软件包的所有可用版本(即 netplan.io):
如您所见,netplan.io 软件包有 2 个版本(0.99-0ubuntu2 和 0.99-0ubuntu1)可用。
现在,您可以安装netplan.io版本0.99-0ubuntu2,如下所示:
要确认安装,请按Y,然后按
应安装netplan.io版本0.99-0ubuntu2。
同样的方式,您可以安装netplan.io版本0.99-0ubuntu1,如下所示:
卸载软件包:
您可以使用 APT 包管理器非常轻松地卸载包。
您可以按如下方式卸载软件包(即 nodejs):
要确认删除操作,请按Y,然后按
应移除该包装。
即使您删除了某个软件包(即nodejs),该软件包也可能会留下一些配置文件和其他文件。您可以按照以下方式删除它们:
应删除软件包的剩余文件(如果有)。
删除不需要的包:
删除程序包后,不再需要与该程序包一起安装的依赖项程序包。
您可以使用以下命令删除这些不必要的包:
如您所见,不再需要 3 个包。删除它们后,将释放大约 30.5 MB 的磁盘空间。
要确认删除操作,请按Y,然后按
应删除所有不必要的包。
保持软件包最新:
我在另一篇文章中介绍了这个主题。要了解如何使 Ubuntu 计算机的所有软件包保持最新,请阅读我的文章如何从命令行界面更新 Ubuntu 20.04。
打扫干净:
APT 包管理器下载的所有包都缓存在 /var/cache/apt/archives/ 目录中,如下面的屏幕截图所示。
要删除缓存的包,请运行以下命令:
如您所见,缓存的包已被删除。
这就是在 Ubuntu 20.04 LTS 中使用 APT 包管理器的方式。感谢您阅读本文。