rpm命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rpm命令相关的知识,希望对你有一定的参考价值。
1.rpm命令rpm可以用来安装,升级更新,查询,验证,卸载rpm包。
2.rpm包的使用方法
rpm -ivh 包文件 //安装
rpm -Uvh 包文件 //升级
rpm -e 包名 //卸载
rpm -qa //查询所有安装的包
rpm -q 包名 //查询一个包是否安装
rpm -qi 包名 //查询一个包的详细信息
rpm -ql 包名 //查询这个rpm包安装了哪些文件
rpm -qf 文件 //查询文件来至哪个rpm包
选项说明:
安装:
i:install安装的意思。
v:查询更详细的信息画面。
h:显示安装进度。
升级:
U:后面接的软件没有安装,系统给予安装;软件安装过了,更新最新版
F:后面接的软件没有安装,系统不给予安装;软件安装过了,就升级到最新版
查询:
qa:查询本机上的所有已经安装的软件。
qf:通过某文件找出属于哪个软件。
q:仅查询软件是否安装。
qi:列出软件的详细信息(information),开发商,版本与说明。
ql:列出软件所有文件与目录所在的完整的文件名(list)。
qc:列出该软件所有设置文件。
qd:列出软件所有帮助文件。
qR:列出与该软件有关的依赖软件所含的文件(Required)。
qp[licdR]:与上面一致,qp查询的是非安装的RPM包内的文件信息。
验证:
V:后面接软件名称,该软件所含的文件被改动过,才会被列出来。针对一个软件查询。
Va:列出系统上面所有有可能被改动过的文件。针对真个系统的。
Vp:后面接文件名,针对RPM软件包。
Vf:列出某个文件是否被改动过。
卸载:
e:卸载
RPM安装可用的参数(不常用)
3.实例
3.1 安装rpm包
查看镜像自带的rpm包。
在虚拟机右下角连接镜像,光盘的标志。
确认mnt目录没有备挂载,然后挂载
mount /dev/cdrom /mnt
cd /mnt/Packages/
ls
安装
# rpm -ivh tree-1.6.0-10.el7.x86_64.rpm
准备中... ################################# [100%]
正在升级/安装...
1:tree-1.6.0-10.el7 ################################# [100%]
3.2 查询rpm安装了那些文件
# rpm -ql tree
/usr/bin/tree
/usr/share/doc/tree-1.6.0
/usr/share/doc/tree-1.6.0/LICENSE
/usr/share/doc/tree-1.6.0/README
/usr/share/man/man1/tree.1.gz
3.3 查看一个文件来自哪个rpm包
# rpm -qf `which tree`
tree-1.6.0-10.el7.x86_64
3.4 查询安装的rpm的信息
# rpm -qi tree
Name : tree
Version : 1.6.0
Release : 10.el7
Architecture: x86_64
Install Date: 2018年04月18日 星期三 11时26分04秒
Group : Applications/File
Size : 89505
....
3.5 卸载rpm包
# rpm -e tree
没有提醒
4.验证(不常用)
针对软件,查看tree这个软件有没有被改动过。
# rpm -V tree
针对系统文件,查看系统文件针对默认情况有没有修改过(没修改的没有提示信息,下面的提示信息是删除一行空行进行测试的即如果)
# rpm -Vf /etc/crontab
S.5....T. c /etc/crontab
前面8位的含义
第9个字符的含义
5. 重建数据库
某些操作可能导致RPM数据库/var/lib/rpm内的文件损坏。重建数据库恢复。
rpm --rebuilddb
以上是关于rpm命令的主要内容,如果未能解决你的问题,请参考以下文章