天天看点

Linux之RPM包管理_校验与文件提取

1、RPM包校验

[[email protected] ~]# rpm –V 已安装的包名
选项:
-V 校验指定RPM包中的文件(verify)

验证内容中的8个信息的具体内容如下:
S 文件大小是否改变
M 文件的类型或文件的权限(rwx)是否被改变
5 文件MD5校验和是否改变(可以看成文件内容是否改变)
D 设备的中,从代码是否改变
L 文件路径是否改变
U 文件的属主(所有者)是否改变
G 文件的属组是否改变
T 文件的修改时间是否改变

文件类型
c 配置文件(config file)
d 普通文档(documentation)
g “鬼”文件(ghost file),很少见,就是该文件不应该被这个RPM包包含
l 授权文件(license file)
r 描述文件(read me)

           

2、RPM包中文件提取

[[email protected] ~]# rpm2cpio 包全名 | \
cpio -idv .文件绝对路径
rpm2cpio
#将rpm包转换为cpio格式的命令
cpio
#是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

[[email protected] ~]# cpio 选项 < [文件|设备]
选项:
-i:copy-in模式,还原
-d:还原时自动新建目录
-v:显示还原过程

[root@localhost ~]# rpm -qf /bin/ls
#查询ls命令属于哪个软件包
[[email protected] ~]# mv /bin/ls /tmp/
#造成ls命令误删除假象
[[email protected] ~]# rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls
#提取RPM包中ls命令到当前目录的/bin/ls下
[r[email protected] ~]# cp /root/bin/ls /bin/
#把ls命令复制会/bin/目录,修复文件丢失
           

继续阅读