校验

格式

  • 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. noip 模拟 7

    我花了我多久的rp啊-- 考试经过 这次是三道题,依旧先看一遍,然后从头开始做 T1一看,这好像是KMP?等等,我好像忘了啊你个废,没事哈希也能做,On似乎可以呀,一波操作,我是不是要A题了? 转到T ...

  2. Failed to set locale, defaulting to C.UTF-8

    CentOS 8中执行命令,出现报错:Failed to set locale, defaulting to C.UTF-8 报错原因: 1.没有安装相应的语言包. 2.没有设置正确的语言环境. 解决 ...

  3. ManagementEventWatcher throws ManagementException with call to Stop()

    参考网址:https://stackoverflow.com/questions/46100105/managementeventwatcher-throws-managementexception- ...

  4. .NET Core程序发布报错:project.assets.json”没有“.NETCoreApp,Version=v3.1/win-x64”的目标。确保已运行还原,且“netcoreapp3.1”已包含在项目的 TargetFrameworks中。

    在控制台中使用命令发布.NET Core程序的时候,报如下的错误: project.assets.json"没有".NETCoreApp,Version=v3.1/win-x64& ...

  5. C#多线程详解(二)

    在上一节介绍了线程的基础知识,下面来研究多线程的优先级 using System; using System.Threading;namespace Test{    class TestThread ...

  6. spring学习日志二

    一.spring依赖注入的方式 1.通过set方法来完成注入 <bean id="student" class="com.zhiyou100.xz.spring.S ...

  7. 【nodejs】request 和 response 对象

    request 和 response 对象的具体介绍: Request 对象 - request 对象表示 HTTP 请求,包含了请求查询字符串,参数,内容,HTTP 头部等属性.常见属性有: req ...

  8. Oracle插入中文乱码问题

    PLSQL执行一条插入代码,两个字符既显示超长,一个字符插入后乱码 insert into person (pid, pname) values (1,'明'); Google查询说原因是Oracle ...

  9. ASP.NET真分页_接前篇引用AspNetPager.dll进行数据分页

    一.前端准备工作 1.之前我写到过<Asp.net中引用AspNetPager.dll进行数据分页>  这种分页方式只能在前台将数据分页,而每次点击查询时对目标数据库还是全查询,这样不仅会 ...

  10. RapidSVN设置diff和edit工具

      菜单栏 -> View -> Preferences -> Programs选择相应的配置页即可   需要配置的路径,默认都在 /usr/bin目录下的 editor可以用ged ...