三
pacman
Pacman 是一个 软件包管理器, 作为 ArchLinux
发
行版的一部分. 它最早由 Arch Linux 的 Judd Vinet开发. Pacman
可以解决安装过程中的依赖问题,自动下载并且安装所有需要的软件包。Pacman包管理器是Arch
Linux的一大亮点。它将一个简单的二进制包格式和易用的构建系统结合了起来。Pacman使得简单的管理与自定义软件包成为了可能,而不论他们来自于
官方的Arch软件库或是用户自己创建的。
安装和删除包
安装和升级软件包前,先让本地的包数据库和远程的软件仓库同步是个好习惯。
pacman -Syu
或者
pacman --sync --refresh
安装或者升级单个软件包,或者一列软件包(包含依赖包),使用如下命令:
pacman -S package_name1 package_name2
有时候在不同的软件仓库中,一个软件包有多个版本(比如extra和testing)。你可以选择一个来安装:
pacman -S extra/package_name
pacman -S testing/package_name
你也可以在一个命令里同步包数据库并且安装一个软件包:
pacman -Sy package_name
删除单个软件包,保留其全部已经安装的依赖关系
pacman -R package_name
删除指定软件包,及其所有没有被其他已安装软件包使用的依赖关系:
pacman -Rs package_name
升级系统
Pacman
能够只用一个指令来升级系统中所有已安装的包。升级的时间取决于你的系统有多新。
pacman -Su
当然,最好做法的是将升级系统和同步仓库数据合成为一条指令:
pacman -Syu
查询包数据库
Pacman
可以用 -Q 标志搜索和查询本地包数据库。见
pacman -Q --help
或者更详细的 pacman(8) manpage。同步数据库可以用 -S 标志搜索和查询。或者见刚提及的 manpage 或者
pacman -S --help
查看详情。
其它用法
Pacman
是个非常广泛的包管理工具,这里只是它的一些其它主要特性。
下载包而不安装它:
pacman -Sw package_name
安装一个本地包(不从源里):
pacman -U /path/to/package/package_name-version.pkg.tar.gz
完全清理包缓存(/var/cache/pacman/pkg):
pacman -Scc
重安装包(那些因为依赖关系问题而无法先删除的包):
pacman -Sf package_name
要了解更详细的参数开关可以pacman --help或者man pacman。