使用 RPM 命令查询软件包
由 lugir 于 星期六, 03/13/2010 - 14:53 发布
RPM 数据库中存储了安装在系统中所有软件包的信息,数据库的位置是 /var/lib/rpm/ 使用这个数据库,你能够查询到系统中安装了哪些软件包、软件包的版本号是多少、软件包中的文件自安装之后进行了多少更改,以及其它方面查询。
RPM 数据库中存储了安装在系统中所有软件包的信息,数据库的位置是 /var/lib/rpm/ 使用这个数据库,你能够查询到系统中安装了哪些软件包、软件包的版本号是多少、软件包中的文件自安装之后进行了多少更改,以及其它方面查询。
查询这个数据库,需要使用 -q 选项。例如使用 rpm -q <package_name> 命令查询软件包是否已经安装,对于已安装的软件包,则会返回 rpm 包的全名
在查询时,你还可以通过使用以下选项与 -q 选项配合,加强 RPM 的查询功能 ( rpm 的查询功能十分强大而且有效,更多信息可以参考 man rpm)
- -a - 查询所有已安装的软件包
- -f <file_name> - 从 RPM 数据库中查询哪个软件包包含指定的文件,查询时要指定文档的绝对路径,即使用 rpm -qf /bin/ls 而不是 rpm -qf ls
- -p <package_file> - 对还未安装到系统中的软件包文件进行查询
请求软件包信息 以下选项用于指定以何种形式显示你所搜索的信息,这些选项被称为“软件包查询选项 (Package Query Options)”
- -i - 显示有关软件包的详细信息,包含软件包名称、描述、发行版、大小、封装日期、安装日期、软件提供商以及其它许多信息
- -l - 显示软件包所包含的文件列表
- -s - 显示软件包中所有文件的状态
- -d - 显示软件包中标识为文档 (如 man 文档,info 文档 和 README 文档) 的文件列表
- -c - 显示软件包中标识为配置文件的文件列表 (如 smb.conf, passwd, inittab 等文档)
为以上给出文件列表的选项加上 -v 选项,能够显示长文件信息,格式与 ls -l 相似。