rpm

CentOS + Redhat 系列安装软件的工具。

rpm -qa # 查询系统中已经安装的所有软件

rpm -qa wget # 查询已经按照的软件包的名字信息,例如:wget-1.14-18.el7.x86_64

rpm -qi wget # 查询一个已安装软件包的所有信息,名字,版本,协议,说明等等。

rpm -e 软件名 —删除一个rpm包 —如何需要不管依赖问题,强制删除软件,在如上命令其后加上 —nodeps

查询已安装软件包都安装到何处

rpm -ql php

Copy

关于相互依赖

1. 强制安装,不推荐

rpm -i —force —nodeps

2. 全部安装,包必须得准备全

rpm -i —force —nodeps

3. 使用rpmdb,待学习。

4. 简单的,如果出现A依赖B,B依赖A的情况,简单的讲两个包一起安装就好了。

rpm -ivh A B

Copy

其他

rpm -ivh rpm文件【安装】
rpm -Uvh rpm文件【更新】

rpm包名称中的i386,i586,i686含义
i386 几乎所有的X86平台,不论是旧的pentum或者是新的pentum-IV与K7系统CPU,都可以正常工作,i指得是Intel兼容的CPU,至于386就是CPU的等级。
i586 就是586等级的计算机,包括pentum第一代MMX CPU,AMD的K5,K6系统CPU(socket7插脚)等CPU都是这个等级。
i686 pentum 2 以后的Intel系统CPU及K7以后等级的CPU都属于这个686等级。

Noarch 代表跟硬件体系结构无关。不管是 x86、PowerPC,Sparc 或者 Alpha 系统。
以上经常会包含在RPM包名称中,搞清楚上面的概念之后,就很容易明白以下名称的意义了。如:
rp-pppoe-2.6-5.i386.RPM
另:i386 这个名字是因为 Intel 的 80386 CPU 就是叫做 i386
rpm指令

rpm -qf /bin/tar —查询一个已经安装的文件属于哪个软件包
tar-1.23-7.el6.x86_64

rpm -qc openssh-clients-5.3p1-81.el6.x86_64 —查看一下已安装软件的配置文件
/etc/ssh/ssh_config

rpm -qd openssh-clients-5.3p1-81.el6.x86_64 —查看一个已经安装软件的文档安装位置
/usr/share/man/man1/scp.1.gz
/usr/share/man/man1/sftp.1.gz
/usr/share/man/man1/slogin.1.gz
/usr/share/man/man1/ssh-add.1.gz
/usr/share/man/man1/ssh-agent.1.gz
/usr/share/man/man1/ssh-copy-id.1.gz
/usr/share/man/man1/ssh-keyscan.1.gz
/usr/share/man/man1/ssh.1.gz
/usr/share/man/man5/ssh_config.5.gz

rpm -qR openssh-clients-5.3p1-81.el6.x86_64 —查看一下已安装软件所依赖的软件包及文件

(二)对于未安装的软件包信息查询
rpm -qpi rpm文件 —查看一个软件包的用途、版本等信息;
rpm -qpl rpm文件 —查看一件软件包所包含的文件
rpm -qpd rpm文件 —查看软件包的文档所在的位置
rpm -qpc rpm文件 —查看一个软件包的配置文件
rpm -qpR rpm文件 —查看一个软件包的依赖关系

(四)签名导入
rpm —import 签名文件
rpm —import RPM-GPG-KEY