Linux 软件包管理命令
包管理基础
PMS 的基础工具是 dpkg 和 rpm。 基于 Debian 的发行版使用的是 dpkg 命令,dpkg 会直接和 Linux 系统上的 PMS 交互,用于安装、管理和删除软件包。基于 Red Hat 的发行版使用的是 rpm 命令。
基于 Debian 的系统 (如 Ubuntu 和 Linux Mint)
dpkg 命令是基于 Debian 系 PMS 工具的核心。包含这个 PMS 中的其他工具有:apt-get、apt-cache、aptitude,最常用的是 aptitude,aptitude 工具本质上是 apt 工具和 dpkg 的前端。
- 查看包的详细信息:
aptitude show package-name
- 查看所有跟某个特定软件包相关的文件列表:
dpkg -L package-name
- 查找某个特定文件属于哪个软件包:
dpkg --search absolute_file_name
- 安装软件包:
- 查找软件包:
aptitude search package-name
,包名之前为 i 的为已经安装,p 或 v 为包可用,但还没安装。 - 安装:
aptitude install package-name
- 查找软件包:
- 更新软件:
aptitude safe-upgrade package-name
- 卸载软件:
- 仅删除,保留配置文件:
aptitude remove package-name
- 删除软件,且清除配置文件:
aptitude purge package-name
- 仅删除,保留配置文件:
基于 Red Hat 的系统 (如 Fedora、OpenSUSE)
基于 Red Hat 的系统具有的不同的可用前端工具有: yum、urpm、zypper。这些前端都是居于 rpm 命令行工具的。
- 列出已安装包:
yum list installed
- 找出系统上的某个特定文件属于哪个软件包:
yum provides file_name
- 安装软件:
yum install package_name
- 本地安装(手动下载安装包并安装):
yum localinstall package_name.rpm
- 软件更新:
- 列出所有已安装包的可用更新:
yum list updates
- 更新某个安装包:
yum update package_name
- 对更新列表中的所有软件包进行更新:
yum update
- 列出所有已安装包的可用更新:
- 软件卸载:
- 删除软件包,而保留配置文件和数据文件:
yum remove package_name
- 删除软件包及其所有文件:
yum erase package_name
- 删除软件包,而保留配置文件和数据文件:
- 处理损坏的包依赖关系(在安装多个软件包时,某个包的依赖关系可能会被另一个包的安装覆盖掉)
- 先尝试:
yum clean all
,然后尝试yum update
- 如果还不能解决问题,尝试
yum deplist package-name
,然后安装可以提供依赖的软件 - 如果仍未解决问题, 可以尝试
yum update --skip-broken
- 先尝试:
参考资料
《Linux 命令行与 Shell 脚本编程大全》