RPM(二进制)包管理
安装
rpm -ivh rpm包地址(包全名) --prefix=/usr/local/
-i install 安装
-v 现视更详细的信息
-h 显示安装进度
--prefix 指定安装位置,不建议,使用默认的就好
--force 强制安装。不管是否已经安装,都重复安装 (例:用于安装目录文件丢失)
安装过程中如需要相应的依赖包或者函数库,系统里面找不到包的话,可以去 http://www.rpmfind.net/ 查找
升级
rpm -Uvh 包全名
-U 升级安装,如果没有安装过,系统直接安装,如果安装的版本比较旧,则升级到新版本
rpm -Fvh 包地址
-F 升级安装,如果没有安装过,则不会安装。
卸载
rpm -e 包名
--nodeps 不检查依赖性
-e 卸载
包名、包全名举例:
包全名:httpd-2.2.16-53..centos.x86_64.rpm 包名:httpd
查询
rpm -q 包名 -q 查询(query)
-i 详细信息
-p 操作未安装包(需要写包全名) rpm -qlp 包全名 查询未安装软件包要安装的地址
-l 列出软件包中所有的文件列表和软件所安装目录 rpm -ql http
-a 所有
-f 查询系统文件属于哪个软件包 rpm -qf 系统文件名
-R 查询软件包的依赖性
rpm -qa | grep httpd
验证
rpm -V httpd(已安装的包名) -V 校验指定的RPM包中的文件
返回提示信息说明
S.5....T. c /etc/httpd/conf/httpd.conf
S 文件大小是否改变
M 文件的类型或文件的权限是否被改变
5 文件MD5校验是否改变
D 设备的主从代码是否改变
L 文件路径是否改变
U 文件的拥有者是否改变
G 文件的所属用户组是否改变
T 文件的修改时间是否改变
c 配置文件
d 普通文件
g ghost file
l 授权文件
r 描述文件
rpm -Vf 系统文件名 -Vf 校验某个系统文件是否修改
数字证书
RPM包本身被动过手脚,必须使用数字证书验证
数字证书特点:
必须找到原厂的公钥文件,然后进行安装
提取rpm包中的证书信息,然后和本机安装的原厂证书进行验证
验证通过,则允许安装,验证不通过,则不允许安装并警告
rpm -qa |grep gpg-pubkey gpg-pubkey-f4a80eb5-53a7ff4b gpg-pubkey-621e9f35-58adea78
#如果没有以上返回则需要导入,证书位置: cd /etc/pki/rpm-gpg rpm --import RPM-GPG-KEY-CentOS-7
文件提取
rpm2cpio 包全名 | cpio -idv .文件绝对路径(./etc/httpd/conf/httpd.conf)
注:文件丢失或者更改没有备份,从安装包里提取包中文件并且覆盖