📜  Arch Linux 中的 Pacman 命令

📅  最后修改于: 2022-05-13 01:57:29.416000             🧑  作者: Mango

Arch Linux 中的 Pacman 命令

Pacman是 arch Linux 和基于 arch 的 Linux 发行版的包管理器。 如果你使用过像 ubuntu 这样的基于 Debian 的操作系统那么 Pacman 类似于基于 Debian 的操作系统的apt命令。 Pacman 包含压缩文件作为包格式并维护基于文本的包数据库。 Pacman 通过与主服务器同步包列表来使系统保持最新状态。 Pacman 可以从官方存储库或您自己的构建包安装包。

在本文中,我们将看到如何使用 Pacman 来管理基于 Arch 的系统中的软件。现在让我们看看如何使用 Pacman。

使用 Pacman 安装包

当我们在我们的机器上安装任何新的操作系统时,我们要做的第一件事就是在系统上安装软件包。现在,要在 Arch Linux 上安装软件包,请使用带有 -S 选项的 Pacman 命令并提及软件包名称。 -S 选项告诉 Pacman 同步并继续。这是一个例子

sudo pacman -S cmatrix

我们可以在 -S 选项后面提到许多包名,用空格分隔。

sudo pacman -S package1 package2 package3

然后 Pacman 将显示包的下载和安装大小并要求继续,然后只需按Y键。 Pacman 将安装的软件包分为两类。



  • 隐式安装:使用 -S 或 -U 选项安装的软件包。
  • 依赖项:安装该包是因为另一个包需要它。

现在让我们看看如何删除已安装的包。

使用 Pacman 删除包

当我们不再需要该包时,我们应该从系统中删除该包。要删除其他包不需要的包及其所有依赖项,请使用以下命令:

sudo pacman -Rs 

要删除包而不删除其依赖项,请使用以下命令:

sudo pacman -R 

要删除不再需要的依赖项,请使用以下命令:

pacman -Qdtq |  pacman -Rs -

升级包

在 arch Linux 中,我们可以使用 Pacman 仅通过一个命令来升级整个系统。使用以下命令更新系统:



sudo pacman -Suy

理解一下意思, S告诉pacman同步本地数据库和主数据库。 u告诉 pacman 升级软件包, y更新系统上的本地捕获。基本上,此命令将本地 pacman 数据库与主存储库数据库同步,然后更新系统。

寻找包裹

现在让我们看看如何将包搜索到 pacman 的数据库中。要在数据库中的包的名称和描述中搜索查询,请使用以下命令:

sudo pacman -Ss     

要搜索系统上已安装的软件包,请使用以下命令:

sudo pacman -Qs query1>  

要在本地数据库中搜索查询,请使用以下命令:

sudo pacman -F query1>  

清理包缓存

当 pacman 下载软件包时,它会将软件包存储到 /var/cache/pacman/pkg/ 中,并且在卸载软件包时 pacman 不会删除这些文件。 Pacman 使用这些文件来降级软件包或安装软件包。但是存储这些包可能需要大量空间。因此,要删除存储的包,请使用以下命令:

sudo pacman -Sc



要删除所有存储的包并捕获,请使用以下命令:

sudp pacman -Scc

安装本地包

通过使用 pacman,我们可以安装 Arch Linux 主存储库以外的软件包。使用以下命令安装软件包

对于本地:

sudo pacman -U path_to_file.pkg.tar.xz

对于远程包:

故障排除

有时使用 pacman 安装软件包时我们会遇到一些错误。以下是 pacman 主要发生的错误:

  • 冲突文件错误:由于存储库中存在某些冲突包,因此会发生此错误。为了解决这个错误,我们可以手动重命名文件或强制覆盖函数。我们可以使用以下命令来覆盖该函数:
pacman -S --overwrite glob package
  • 包无效:由于包的部分安装,可能会发生此错误。我们可以通过删除 /var/cache/pacman/pkg/ 中的 .part 文件来解决这个错误。
  • 正在锁定数据库:更新数据库时 pacman 被中断时可能会发生此错误。要解决此错误,请删除文件 /var/lib/pacman/db.lck 并更新数据库。使用以下命令删除文件:
rm /var/lib/pacman/db.lck