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. BUUCTF--findit

    测试文件:https://buuoj.cn/files/7b8602971727c6c82ec0d360d5cad2c0/6a428ff2-25d7-403c-b28e-3f980a10a5a2.ap ...

  2. Handle Refresh Token Using ASP.NET Core 2.0 And JSON Web Token

    来源:   https://www.c-sharpcorner.com/article/handle-refresh-token-using-asp-net-core-2-0-and-json-web ...

  3. WannaCry的UWP版,哈哈哈

  4. Linux安装postgresql及基础操作

    安装环境说明 系统环境说明 [root@slave1 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [root@sl ...

  5. 浅谈协议(二)——视频流协议 [RTP/RTCP/RTMP/HTTP_FLV]

  6. How to compile and install Linux Kernel 5.1.2 from source code

    How to compile and install Linux Kernel 5.1.2 from source code Compiling a custom kernel has its adv ...

  7. 原生jdbc操作

    1:加入dbcp连接池依赖 <dependency> <groupId>org.apache.commons</groupId> <artifactId> ...

  8. CSS中用 opacity、visibility、display 属性将 元素隐藏 的 对比分析

    说明 opacity 用来设置透明度 display 定义建立布局时元素生成的显示框类型 visibility 用来设置元素是否可见. opacity.visibility.display 这三个属性 ...

  9. python 在不同CPU上同时运行多个程序

    出处/From https://www.quora.com/If-you-run-Python-under-a-dual-core-CPU-then-can-you-run-two-Python-pr ...

  10. Test 3.27 T3 矩阵

    Description 给一个 n*n 的地图,每个格子有一个价格,找一个矩形区域,使其价格总和位于[k,2k] Input 输入 k n(n<2000)和一个 n*n 的地图 Output 输 ...