Linux系列(33)- rpm命令管理之RPM包校验提取(5)
校验
格式
- 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)的更多相关文章
- Linux系列(32) - rpm命令管理之RPM查询(4)
RPM包默认安装位置 RPM包默认安装路径 /etc/ 配置文件安装目录 /usr/bin/ 可执行的命令安装目录 /usr/lib/ 程序所使用的函数库保存位置 /usr/share/doc/ 基本 ...
- Linux学习之RPM包管理-rpm命令管理(十六)
Linux学习之RPM包管理-rpm命令管理 目录 简介 RPM包依赖性 包全名与包名 rpm软件包安装 rpm软件包卸载 升级降级rpm软件包 rpm软件包的查询 rpm软件包校验 简介 RPM是R ...
- 软件包管理:rpm命令管理-包命名与依赖性
rpm包的管理主要有两种方法:一种是rpm命令管理另一种是yum在线管理 注意软件包没有扩展名,写上只是为了好看,便于识别而已. 注意区别包名,包全名.之所以要区分,就是因为有些命令十分挑剔,需要跟正 ...
- nginx高性能WEB服务器系列之二命令管理
nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...
- [转帖]Linux系列之SAR命令使用详解
Linux系列之SAR命令使用详解 sar是System Activity Reporter(系统活动情况报告)的缩写.这个工具所需要的负载很小,也是目前linux中最为全面的性能分析工具之一.此款工 ...
- Linux系列(31) - rpm命令管理之升级与卸载命令(3)
升级命令 rpm -Uvh 包全名(要升级到的软件版本),如果没有安装这个软件的任何版本,这个命令可以代替rpm -ivh. rpm -Uvh 包全名 选项: - -U(upgrade):升级 卸载命 ...
- linux笔记:RPM软件包管理-rpm命令管理
rpm包命名原则: rpm包的依赖性: 包名和包全名: rpm软件包安装.升级和卸载: rpm软件包查询: 从rpm包中提取指定文件:
- 运维笔记10 (Linux软件的安装与管理(rpm,yum))
概述:用rpm安装和管理软件(rpm解决依赖性),用yum安装与管理软件(yum解决依赖性). 1.linux的软件 linux能够说是一款改变时代的操作系统,可是一个操作系统再优秀假设没有好用的应用 ...
- 第3章 rpm命令管理
3-1 RPM包命名规则 3-2 安装命令 3-3 升级与卸载 3-4 RPM包查询 3-5 RPM包校验
随机推荐
- noip 模拟 7
我花了我多久的rp啊-- 考试经过 这次是三道题,依旧先看一遍,然后从头开始做 T1一看,这好像是KMP?等等,我好像忘了啊你个废,没事哈希也能做,On似乎可以呀,一波操作,我是不是要A题了? 转到T ...
- Failed to set locale, defaulting to C.UTF-8
CentOS 8中执行命令,出现报错:Failed to set locale, defaulting to C.UTF-8 报错原因: 1.没有安装相应的语言包. 2.没有设置正确的语言环境. 解决 ...
- ManagementEventWatcher throws ManagementException with call to Stop()
参考网址:https://stackoverflow.com/questions/46100105/managementeventwatcher-throws-managementexception- ...
- .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& ...
- C#多线程详解(二)
在上一节介绍了线程的基础知识,下面来研究多线程的优先级 using System; using System.Threading;namespace Test{ class TestThread ...
- spring学习日志二
一.spring依赖注入的方式 1.通过set方法来完成注入 <bean id="student" class="com.zhiyou100.xz.spring.S ...
- 【nodejs】request 和 response 对象
request 和 response 对象的具体介绍: Request 对象 - request 对象表示 HTTP 请求,包含了请求查询字符串,参数,内容,HTTP 头部等属性.常见属性有: req ...
- Oracle插入中文乱码问题
PLSQL执行一条插入代码,两个字符既显示超长,一个字符插入后乱码 insert into person (pid, pname) values (1,'明'); Google查询说原因是Oracle ...
- ASP.NET真分页_接前篇引用AspNetPager.dll进行数据分页
一.前端准备工作 1.之前我写到过<Asp.net中引用AspNetPager.dll进行数据分页> 这种分页方式只能在前台将数据分页,而每次点击查询时对目标数据库还是全查询,这样不仅会 ...
- RapidSVN设置diff和edit工具
菜单栏 -> View -> Preferences -> Programs选择相应的配置页即可 需要配置的路径,默认都在 /usr/bin目录下的 editor可以用ged ...