学习一种不同的包管理器和怎么使用它。
如果你在一直在使用 Linux,你很快就会发现做同样的事情有很多不同的方法。这包括通过命令行在 Linux 上安装应用。我已经是大约 25 年的 Linux 用户,我一次又一次地回到命令行来安装我的应用。
从命令行安装应用程序最常用的方法是使用称为包管理器通过软件库(存储软件的地方)安装。所有 Linux 应用都作为软件包分发,这些软件包只不过是与软件包管理系统相关的文件。每个 Linux 发行版都附带一个包管理系统,但它们并不完全相同。
什么是包管理系统?
包管理系统由一组工具和文件格式组成,它们一起用于安装、更新和卸载 Linux 应用。两种最常见的包管理系统来自 Red Hat 和 Debian。 Red Hat、CentOS 和 Fedora 都使用 rpm
系统(.rpm 文件),而 Debian、Ubuntu、Mint 和 Ubuntu 都使用 dpkg
(.deb 文件)。Gentoo Linux 使用名为 Portage 的系统,Arch Linux 只使用 tarball(.tar 文件)。这些系统之间的主要区别在于它们如何安装和维护应用。
你可能想知道 .rpm
、.deb
或 .tar
文件中的内容。你可能会惊讶地发现,所有这些都只是普通的老式归档文件(如 .zip
),其中包含应用的代码,如何安装它的说明,依赖项(它可能依赖的其他应用),以及配置文件的位置。读取和执行所有这些指令的软件称为包管理器。
Debian、Ubuntu、Mint 等
Debian、Ubuntu、Mint 和其它基于 Debian 的发行版都使用 .deb
文件和 dpkg
包管理系统。有两种方法可以通过此系统安装应用。你可以使用 apt
程序从仓库进行安装,也可以使用 dpkg
程序从 .deb
文件安装应用。我们来看看如何做到这两点。
使用 apt
安装应用非常简单:
$ sudo apt install app_name
通过 apt
卸载应用也非常简单:
$ sudo apt remove app_name
要升级已安装的应用,首先需要更新应用仓库:
$ sudo apt update
完成后,你可以使用以下命令更新任何程序:
$ sudo apt upgrade
如果你只想更新一个应用,该怎么办?没问题。
$ sudo apt update app_name
***,假设你要安装的应用不存在于 Debian 仓库中,但有 .deb
下载。
$ sudo dpkg -i app_name.deb
Red Hat、CentOS 和 Fedora
默认情况下,Red Hat 使用多个包管理系统。这些系统在使用自己的命令时,互相仍然非常相似,而且与 Debian 中使用的也相似。例如,我们可以使用 yum
或 dnf
管理器来安装应用。
$ sudo yum install app_name
$ sudo dnf install app_name
.rpm
格式的应用也可以使用 rpm
命令安装。
$ sudo rpm -i app_name.rpm
删除不需要的应用同样容易。
$ sudo yum remove app_name
$ sudo dnf remove app_name
更新应用同样容易。
$ yum update
$ sudo dnf upgrade --refresh
如你所见,从命令行安装、卸载和更新 Linux 应用并不难。事实上,一旦你习惯它,你会发现它比使用基于桌面 GUI 的管理工具更快!
有关从命令行安装应用程序的更多信息,请访问 Debian Apt wiki、Yum 速查表 和 DNF wiki。