校验

格式

  • rpm -V 已安装的包名
  • 选项:
  •   — -V:校验指定RPM包中的文件(verify)

例子

  • rpm -V httpd 后, 无任何提示, 代表该文件没有被做任何修改
  • # 判断本地的apache 与官方给出的是否一致, 从而判断是否被人修改
  • 修改httpd.conf配置文件后
  • 提示 : S.5....T. c /etc/httpd/conf/httpd.conf
  • 红字8位分别代表验证内容不同信息,有变化就显示,没变化以点“.”表示变动
  • 蓝字c代表验证内容文件的文件类型
内容中信息校验 文件类型
S 文件大小是否变化

c (config file)

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

d (documentation)

普通文件
5 文件MD5校验是否改变(可以理解为文件内容是否改变)

g (ghost file)

"鬼"文件, 很少见, 就是该文件不应该被这个RPM包包含,一般为病毒

D 设备的主从代码是否改变

L (license file)

授权文件
L 文件路径是否改变

r (read me)

描述文件
U 文件的属主(所有者)是否改变    
G 文件的属组是否改变    
T 文件的修改日期是否改变    

MD5校验

  • 用来校验文件的完整性(文件内容是否被改变)
  • 例如, 在官网下载的游戏, 官方会给出MD5校验码, 将下载的游戏通过专用的MD5校验工具校验后生成一份MD5校验码, 对比两份校验码 是否一致, 不一致则说明,下载的文件可能丢包, 可能文件损坏, 可能被其他人动过手脚一直木马等

RPM 包中文件提取

格式:

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

命令解析:

  • rpm2cpio 包全名
  • # — rpm2cpio:将rpm包转换为cpio格式的命令
  • # — cpio :是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件
  • # 由于 cpio 命令自身不知道从何处来提取文件, 所以需要用管道符来告知提取的位置
  • 管道符前半部分:从哪边提取;管道符后半部分:怎么提取,提取方式
  • cpoi 选项 < [文件|设备]
  • 选项:
  • -i : copy-in 模式, 还原
  • -d : 还原时自动新建目录
  • -v : 显示还原过程

例子

rpm -qf /bin/ls :查询ls 命令属于哪个软件包

mv /bin/ls /tmp/ : 造成ls 命令误删除假象

rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls:切换至家目录后, 提取RPM 包中ls 命令到当前目录的 /bin/ls 下

cp /root/bin/ls /bin/ # 把ls 命令复制到/bin/目录, 修复文件丢失

Linux系列(33)- rpm命令管理之RPM包校验提取(5)的更多相关文章

  1. Linux系列(32) - rpm命令管理之RPM查询(4)

    RPM包默认安装位置 RPM包默认安装路径 /etc/ 配置文件安装目录 /usr/bin/ 可执行的命令安装目录 /usr/lib/ 程序所使用的函数库保存位置 /usr/share/doc/ 基本 ...

  2. Linux学习之RPM包管理-rpm命令管理(十六)

    Linux学习之RPM包管理-rpm命令管理 目录 简介 RPM包依赖性 包全名与包名 rpm软件包安装 rpm软件包卸载 升级降级rpm软件包 rpm软件包的查询 rpm软件包校验 简介 RPM是R ...

  3. 软件包管理:rpm命令管理-包命名与依赖性

    rpm包的管理主要有两种方法:一种是rpm命令管理另一种是yum在线管理 注意软件包没有扩展名,写上只是为了好看,便于识别而已. 注意区别包名,包全名.之所以要区分,就是因为有些命令十分挑剔,需要跟正 ...

  4. nginx高性能WEB服务器系列之二命令管理

    nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...

  5. [转帖]Linux系列之SAR命令使用详解

    Linux系列之SAR命令使用详解 sar是System Activity Reporter(系统活动情况报告)的缩写.这个工具所需要的负载很小,也是目前linux中最为全面的性能分析工具之一.此款工 ...

  6. Linux系列(31) - rpm命令管理之升级与卸载命令(3)

    升级命令 rpm -Uvh 包全名(要升级到的软件版本),如果没有安装这个软件的任何版本,这个命令可以代替rpm -ivh. rpm -Uvh 包全名 选项: - -U(upgrade):升级 卸载命 ...

  7. linux笔记:RPM软件包管理-rpm命令管理

    rpm包命名原则: rpm包的依赖性: 包名和包全名: rpm软件包安装.升级和卸载: rpm软件包查询: 从rpm包中提取指定文件:

  8. 运维笔记10 (Linux软件的安装与管理(rpm,yum))

    概述:用rpm安装和管理软件(rpm解决依赖性),用yum安装与管理软件(yum解决依赖性). 1.linux的软件 linux能够说是一款改变时代的操作系统,可是一个操作系统再优秀假设没有好用的应用 ...

  9. 第3章 rpm命令管理

    3-1 RPM包命名规则 3-2 安装命令 3-3 升级与卸载 3-4 RPM包查询 3-5 RPM包校验

随机推荐

  1. brew换源

    转自:https://blog.csdn.net/gorwayne/article/details/107359912 第一步,替换brew.git cd "$(brew --repo)&q ...

  2. Spring Boot 项目集成Redis

    目录 集成方式 使用Jedis 使用spring-data-redis Redis的安装 绑定配置 获取Redis客户端 Redis工具的编写 使用 集成方式 使用Jedis Jedis是Redis官 ...

  3. Linux搭建Radius服务器

    安装环境介绍 以下服务器信息为该文档安装Radius服务环境 服务器信息:CentOS7 内核版本:3.10.0-1062.el7.x86_64 安装软件版本 freeradius-utils-3.0 ...

  4. SQL 练习20

    查询各科成绩前三名的记录 select a.sid,a.cid,a.score from sc a left join sc b on a.cid = b.cid and a.score<b.s ...

  5. jpa写原生sql-EntityManager

    废话不多说 package com.meeno.trainsys.meeting.service; import com.google.common.collect.Lists; import com ...

  6. Android系统编程入门系列之广播接收者BroadcastReceiver实现进程间通信

    在前边几篇关于Android系统两个重要组件的介绍中,界面Activity负责应用程序与用户的交互,服务Service负责应用程序内部线程间的交互或两个应用程序进程之间的数据交互.看上去这两大组件就能 ...

  7. Sadmin:打造私有Django公共库实现代码复用

    我们借助于Django开发了许多的内部管理系统,例如之前介绍过的Probius.Kerrigan.Proxy等等,这些系统看起来长的都一样,但实际实现的功能确是千差万别,这些不同的系统为什么会长的一样 ...

  8. Vue 如何实现一个底部导航栏组件

    参考网址: https://www.jianshu.com/p/088936b7b1bd/ Vue 如何实现一个底部导航栏组件 可以看到父组件是知道我点击了底部TabBar的哪个item的. 实现 实 ...

  9. Struts2之OGNL与ValueStack

    时间:2017-1-12 12:02 --OGNL1.OGNL表达式是什么    OGNL的全称是Object-Graph Navigation Language的缩写,中文名是对象图导航语言,它是一 ...

  10. assign()与create()的区别

    Q:assign()与create()的区别? A:let obj = Object.assign(targetObj, -sourceObj) 作用:将一个或多个源对象自身的可枚举属性与目标对象的属 ...