1. RPM 包校验

$ rpm -V 已安装的包名

选项 释义
-V (verify) 校验指定 RPM 包中的文件

(1) 验证内容中的 8 个信息的具体内容如下

信息名称 释义
S 文件大小是否改变
M 文件的类型或文件的权限 (rwx) 是否被改变
5 文件 MD5 校验和是否改变(可以看成文件内容是否改变)
D 设备的主从代码是否改变
L 文件路径是否改变
U 文件的属主(所有者)是否改变
G 文件的属组是否改变
T 文件的修改时间是否改变

(2) 文件类型

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

2. RPM 包中文件提取

$ rpm2cpio 包全名 | cpio -idv .文件绝对路径

命令 释义
rpm2cpio 将 rpm 包转换为 cpio 格式
cpio 是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

$ cpio 选项 < [文件|设备]

选项 释义
-i copy-in 模式,还原
-d 还原时自动新建目录
-v 显示还原过程
  • 查询 ls 命令属于哪个软件包

    $ rpm -qf /bin/ls

  • 造成 ls 命令误删除假象

    $ mv /bin/ls /tmp/

  • 提取 RPM 包中 ls 命令到当前目录的 /bin/ls 下

    $ rpm2cpio /mnt/cdrom/Packagea/coreutils-8.4.e16.i686.rpm | cpio -idv ./bin/ls

  • 把 ls 命令复制回 /bin/ 目录,修复文件丢失

    $ cp /root/bin/ls /bin/


此为以前听 兄弟连的 Linux 公开课 记下的笔记

[Linux] 023 RPM 包校验与文件提取的更多相关文章

  1. Linux系列(33)- rpm命令管理之RPM包校验提取(5)

    校验 格式 rpm -V 已安装的包名 选项: - -V:校验指定RPM包中的文件(verify) 例子 rpm -V httpd 后, 无任何提示, 代表该文件没有被做任何修改 # 判断本地的apa ...

  2. Linux下RPM包的安装

    Linux下RPM包安装 二进制包(RPM包.系统默认包) RPM安装 rpm -ivh 包全名(查询依赖网址:http://www.rpmfind.net) -i(install):安装 -v(ve ...

  3. 3-5 RPM包校验

    1.RPM包校验 <1>rpm -V 已安装的包名 <2>选项: -V 校验制定RPM包中的文件(verify) <3>说明: <1>若没有显示任何内容 ...

  4. 软件包管理:rpm命令管理-校验和文件提取

    校验主要用于判断文件是否做了更改 修改标志: 会用-V,会看输出结果即可. 当有误操作,比如删了某一个文件,只需知道他属于哪一个rpm包,可用提取找回覆盖就行.并不把整个rpm包安装,而是提取其中的某 ...

  5. 包管理 ----- Linux操作系统rpm包安装方式步骤

    Linux操作系统rpm包安装方式步骤 2016年08月04日 07:00:26 阅读数:17140 转自 : http://os.51cto.com/art/201003/186467.htm 特别 ...

  6. rpm2cpio---如何不安装但是获取rpm包中的文件

    如何不安装但是获取rpm包中的文件 使用工具rpm2cpio和cpio rpm2cpio xxx.rpm | cpio -idmv 参数i表示提取文件.v表示指示执行进程,d和make-directo ...

  7. 不安装rpm包,取出rpm包里的文件

    1.查看rpm包里的文件 [root@VM_166_132 ~]# rpm -qlp mysql5.6.29-1-3.x86_64.rpm |more/etc/ld.so.conf.d/mysql-5 ...

  8. linux制做RPM包

    制作rpm包 1.制作流程 1.1 前期工作 1)创建打包用的目录rpmbuild/{BUILD,SPECS,RPMS, SOURCES,SRPMS} 建议使用普通用户,在用户家目录中创建 2)确定好 ...

  9. linux制作RPM包

    制作rpm包 1.制作流程1.1 前期工作 1)创建打包用的目录rpmbuild/{BUILD,SPECS,RPMS, SOURCES,SRPMS} 建议使用普通用户,在用户家目录中创建 2)确定好制 ...

随机推荐

  1. asp.net 几种传值方法的分析

    本文转自:http://www.cnblogs.com/shengtianlong/archive/2010/08/11/1797608.html ASP.NET页面传值方法的优缺点及适用范围 1. ...

  2. java 判断点是否在一条线段上

    public static void main(String[] args) { Scanner scan = new Scanner(System.in); Point point1 = new P ...

  3. java操作mongodb工具类

    新建maven项目 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...

  4. JVM垃圾回收算法图解

    参考文档:https://www.toutiao.com/a6691966641242112516/ 垃圾搜集算法 标记-清除法 标记-清除算法采用从根集合(GC Roots)进行扫描,对存活的对象进 ...

  5. CentOS7 设置电源选项,待机、睡眠、挂起

    设置装有 CentOS7 的笔记本合盖后黑屏进入睡眠模式 systemd 能够处理某些电源相关的 ACPI事件,你可以通过从 /etc/systemd/logind.conf 以下选项进行配置: Ha ...

  6. linux里面以指定用户运行命令

    一.chroot方式 [root@localhost ~]# chroot --userspec "nginx:nginx" "/" sh -c "w ...

  7. 01基于python玩转人工智能最火框架之TensorFlow

    课程主要内容 人工智能理论知识 开发工具介绍和环境配置 TensorFlow基础练习和应用实战 课程能学到什么? 人工智能知识点 Python库的使用 TensorFlow 框架使用和应用开发 适合人 ...

  8. man(2) readv writev

    #include <sys/uio.h> ssize_t readv(int fd, const struct iovec *iov, int iovcnt); unix高级环境编程中的定 ...

  9. unixbench

    1.下载 https://github.com/kdlucas/byte-unixbench/archive/v5.1.3.tar.gz 2.修改Makefile 交叉编译 #CC=gccCC = a ...

  10. 牛客ACM赛 B [小a的旅行计划 ]

    链接 B 小a的旅行计划 把\(n\)个数中选任意数分成\(a,b\)两个集合,集合无区别,要求不包含且有交,求方案数.\(n\leq 10^{13}\) 首先讨论\(a,b\)并集是否为全集: 若是 ...