一、RPM包校验

[root@localhost Packages]# rpm -V 已安装的包名

#选项:

#    -V    校验指定RPM包中的文件(verify)

[root@localhost Packages]# vim /etc/httpd/conf/httpd.conf        ---> 对包的配置文件进行修改

[root@localhost Packages]#
rpm -V httpd                    ---> 对修改后的包再次进行校验(无变化,无提示)

S.5....T. c /etc/httpd/conf/httpd.conf

验证内容中的8个信息的具体内容如下:

S    文件大小是否改变

M    文件的类型或文件的权限(rwx)是否变改变

5    文件MD5校验和是否改变(可以看作文件内容是否改变)

D    装置的主/次代码已经改变

L    Link路径已被改变

U    文件的所属人已被改变

G    文件的所属群组已被改变

T    文件的创建时间忆被改变

文件类型:

c    配置文件(config file)

d    普通文件(documentation)

g    "鬼"文件(ghost file),很少发生,通常是指该文件不被软件包所包含

l    授权文件(license file)

r    描述文件(read me)

二、RPM包中文件提取

[root@localhost testuser]# rpm -qf /usr/bin/ls            ---> 查询文件所属的包

coreutils-8.22-11.el7.x86_64

[root@localhost testuser]# rpm2cpio /mnt/cdrom/Packages/coreutils-8.22-11.el7.x86_64.rpm | cpio -t | grep /usr/bin/ls

#    ---> 查询文件的相对路径

./usr/bin/ls

28552 blocks

[root@localhost testuser]# pwd                ---> 查看当前位置

/home/testuser

[root@localhost testuser]# ll                ---> 查看当前目录下的文件

total 0

[root@localhost testuser]# rpm2cpio /mnt/cdrom/Packages/coreutils-8.22-11.el7.x86_64.rpm | cpio -idv ./usr/bin/ls

#    ---> 将所需要的文件从文件所属的包中提取到当前目录下

./usr/bin/ls

28552 blocks

[root@localhost testuser]# ll                ---> 查看当前目录,文件是否提取成功

total 0

drwxr-xr-x. 3 root root 16 Mar 2 09:19 usr            ---> 此目录出现,说明文件提取成功

[root@localhost testuser]# cd usr/bin/            ---> 进入目录

[root@localhost bin]# ll                    ---> 查看目录下是否有指定提取的文件

total 116

-rwxr-xr-x. 1 root root 117616 Mar 2 09:19 ls        ---> 指定文件提取成功

 

#将需要恢复的文件提取成功之后,将文件复制到对应的目录下即可。

【注意】cpio参数后的文件路径"./usr/bin/ls"必须与前面查询出来的相对路径"./usr/bin/ls"一样,否则提取不成功

 

cpio参数说明:

    -t    列出的意思,和"--list"等同,此时列出的是"相对路径"

    -I    抽取的意思,和"--extract"等同

    -d    建立目录的意思,和"--make-directories"等同

    -v    冗余信息输出,和"--verbose"等同

 

 

 

 

RPM包校验和提取的更多相关文章

  1. 『学了就忘』Linux软件包管理 — 44、在RPM包中提取文件

    目录 1.RPM包中文件的提取 2.在RPM包中提取文件的操作 (1)cpio命令介绍 (2)提取RPM包中文件 1.RPM包中文件的提取 为什么要做这个事呢? 在操作Linux系统的时候误删除一个文 ...

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

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

  3. 从.src.rpm包中提取出完整的源码的方法

    1 什么是完整的源码 就是说,最初始的源码加上打了所有的patch后的源码,即最新的源码. 2 过程 2.1 从.src.rpm中提取完整的rpm工程文件 2.1.1 rpm to cpio rpm2 ...

  4. linux rpm之已安装包校验、rpm包中文件提取

    已安装包校验 rpm -V 已安装的包名-V 校验指定rpm包中的文件 rpm -V pth没有任何提示,说明自安装后没有做过任何修改 rpm包中文件提取 比如对一个系统配置文件误操作,可以根据这个文 ...

  5. 15. Linux提取RPM包文件(cpio命令)详解

    在讲解如何从 RPM 包中提取文件之前,先来系统学习一下 cpio 命令.cpio 命令用于从归档包中存入和读取文件,换句话说,cpio 命令可以从归档包中提取文件(或目录),也可以将文件(或目录)复 ...

  6. 3-5 RPM包校验

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

  7. [Linux] 023 RPM 包校验与文件提取

    1. RPM 包校验 $ rpm -V 已安装的包名 选项 释义 -V (verify) 校验指定 RPM 包中的文件 (1) 验证内容中的 8 个信息的具体内容如下 信息名称 释义 S 文件大小是否 ...

  8. 『学了就忘』Linux软件包管理 — 43、RPM包的校验和证书

    目录 1.RPM包的校验 (1)RPM包校验基本命令 (2)校验某个系统文件是否被修改举例 (3)验证内容中8个信息的具体内容 (4)文件类型有哪些 2.RPM包的证书 (1)数字证书 (2)数字证书 ...

  9. 从rpm包提取rpm spec 的几种方法

    包含了源码包 先安装,然后在rpmbuild 目录直接可以查看文件 不用安装 ,使用rpm2cpio rpm2cpio myrpm.src.rpm | cpio -civ '*.spec' 没有源码 ...

随机推荐

  1. WebAPI下的如何实现参数绑定

    本文将概述在WebAPI方式下将如何将参数绑定到一个action方法,包括参数是如何被读取,一系列规则决定特定环境采用的那种绑定方式,文章最后将给出一些实际的例子. Parameter binding ...

  2. 模块化的JavaScript开发的优势在哪里

    如今模块化的 JavaScript 的开发越来越火热,无论是模块加载器还是优秀的 JavaScript 模块,都是层出不穷.既然这么火,肯定是有存在的理由,肯定是解决了某些实际问题.很多没接触过模块化 ...

  3. 巧用Session Manager还原Firefox丢失会话

    今天Firefox Crash之后,我的会话全部丢失了.按照以往来说,Firefox在重新启动之后或者Crash之后会有一个会话还原的页面.但今天确实没有.后来我进行Google查阅,试了很多种办法. ...

  4. 第三方分页控件aspnetPager出现问题解决方法

    问题描述: 今天在打开以前的项目使用vs2013打开后并且生成解决方案的时候发现报错了.经过检查发现是由于第三方分页控件aspnetPager在页面上不能引用到了. 解决方法: 1. 首先将AspNe ...

  5. 深入Java虚拟机读书笔记第三章安全

    为什么需要安全性 Java的安全模型是其多个重要结构特点之一,它使Java成为适于网络环境的技术.Java安全模型侧重于保护终端用户免受从网络下载的.来自不可靠来源的.恶意程序(以及善于程序中的bug ...

  6. ExtJs5_使用图标字体来美化按钮

    sencha 的例子中,有使用图标字体来美化按钮的例子,这个用起来又方便风格又统一,例如下图: 上面图标字体的使用方法也很简单,只要下载Font Awesome的css和图标文件,放到项目里就可以了. ...

  7. 转:Eclipse Kepler已支持Java 8

    文章来自于:http://www.infoq.com/cn/news/2014/04/eclipse-kepler-support-java8 期待已久的Java 8已于2014年3月19日正式发布, ...

  8. hdu 5100 Chessboard

    http://acm.hdu.edu.cn/showproblem.php?pid=5100 在比赛时没看懂题就没看,结束之后,看了解题报告才知道怎么做. 解题报告: 首先,若n<k,则棋盘连一 ...

  9. SignTool.exe(签名工具)

    水漂收集 -- SignTool.exe(签名工具) =============C#.Net 篇目录============== 签名工具是一个命令行工具,用于用证书对文件进行数字签名,验证文件和时间 ...

  10. 多线程Two-Phase Termination Pattern两阶段终止模式

    一 Two-Phase Termination Pattern Two-Phase Termination Pattern,指的就是当希望结束一个线程的时候,送出一个终止请求,但是不会马上停止,做一些 ...