一、命令简介
rpm
是 Red Hat Package Manager 的缩写,是 Red Hat、CentOS、Fedora 等基于 Red Hat 的 Linux 发行版中用于管理和安装软件包的工具。它能够安装、卸载、升级、查询和验证软件包。
相关命令:
- rpm 是基础,提供了底层的软件包操作功能。
- yum 是基于rpm构建的,提供了更高级的依赖管理和仓库功能。
- dnf 是yum的改进版,它保留了yum的许多特性和用法,同时引入了新的特性和优化。
二、命令参数
-
-i, --install
:安装软件包。 -
-e, --erase
:卸载软件包。 -
-U, --upgrade
:升级软件包。 -
-F, --freshen
:如果软件包已安装,则升级。 -
-q, --query
:查询软件包。 -
-l, --list
:列出软件包中的文件。 -
-v, --verbose
:提供更多的详细信息。 -
-h, --hash
:在安装或升级软件包时显示进度条。 -
-a, --all
:对所有已安装的软件包执行操作。 -
-p, --package
:处理指定的软件包文件。 -
--test
:不实际执行安装或卸载,仅进行测试。 -
-f, --file
:查询拥有指定文件的软件包。 -
--nodeps
:不检查依赖性。
三、命令示例
1. 安装软件包
-
使用
rpm
安装一个.rpm
软件包:rpm -ivh package_name.rpm
选项:
-
-i
:安装软件包。 -
-v
:显示详细信息。 -
-h
:显示进度条。
-
2. 升级软件包
-
升级已安装的软件包:
rpm -Uvh package_name.rpm
选项:
-
-U
:升级软件包,如果未安装则进行安装。
-
3. 删除软件包
-
卸载已安装的软件包:
rpm -e package_name
选项:
-
-e
:卸载软件包。
-
4. 查询软件包
-
查询系统中是否已安装某个软件包:
rpm -q package_name
选项:
-
-q
:查询软件包。
-
-
查询已安装软件包的详细信息:
rpm -qi package_name
选项:
-
-i
:显示详细信息。
-
-
查询已安装软件包安装了哪些文件:
rpm -ql package_name
选项:
-
-l
:列出文件列表。
-
-
查询文件所属的软件包:
rpm -qf /path/to/file
选项:
-
-f
:查询文件所属的软件包。
-
5. 验证软件包
-
验证已安装的软件包是否被修改过:
rpm -V package_name
选项:
-
-V
:验证软件包。
-
6. 查看软件包内容
-
查看
.rpm
文件中包含哪些文件:rpm -qpl package_name.rpm
选项:
-
-p
:查询未安装的包文件。 -
-l
:列出文件列表。
-
7. 显示包的依赖关系
-
显示一个
.rpm
包所依赖的其他软件包:rpm -qpR package_name.rpm
选项:
-
-R
:显示依赖关系。
-
注意事项
- 依赖管理:
rpm
不自动解决依赖问题,如果安装或卸载一个包时有依赖关系未满足,操作将失败。通常建议使用yum
或dnf
(这两个工具可以自动处理依赖)来替代rpm
进行包管理。 - 使用
rpm
时,请务必谨慎,尤其是在卸载软件包时,因为不正确的操作可能会导致系统不稳定。