3-5 RPM包校验

  1.RPM包校验

    <1>rpm -V 已安装的包名

    <2>选项:

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

    <3>说明:

        <1>若没有显示任何内容,则证明包正常,则没有被修改过

        <2>一旦有显示,则证明包被修改过,

          且会在相应位置显示出被修改过的属性所代表的字母(.说明该属性没有被修改)

-----------------------------------------------------------------------------------------------------------------

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

      S    文件大小是否改变

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

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

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

      L    文件路径是否改变

      U    文件的属主(所有者)是否改变

      G    文件的属组是否改变

      T    文件的修改时间是否改变

-----------------------------------------------------------------------------------------------------------------

    文件类型:

      c    配置文件(config file)

      d    普通文档(documentation)

      g    “鬼”文件(ghost file),很少见,就是该文件不应该被这个rpm包包含

      L    授权文件(license file)

      r    描述文件(read me)

-----------------------------------------------------------------------------------------------------------------

        <3>若出现鬼文件,有可能是出现漏洞或被攻击的可能

        <4>该命令用于验证你的文件与官方提供的文件是否相同,从而判断系统文件是否被做过修改

  2.RPM包中文件提取

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

    <2> --- rpm2cpio    //将rpm包转换为cpio格式的命令

        --- cpio      //是一个标准工具,它用于创建软件档案文档和从档案文件中提取文件

    <3>若由于误操作,不小心删除某些重要系统命令,如ls等,

      可以通过rpm包提取文件的方法进行恢复

    <4>命令: cpio 选项 < [文件|设备] //可以使用重定向也可以使用管道符

      选项:

          -i    copy-in模式,还原

          -d    还原时自动创建新目录

          -v    显示还原过程

-----------------------------------------------------------------------------------------------------

    <1>比如,不小心删除了ls命令

        where is ls

        mv /bin/ls  /tmp  //由于是做实验,不要真的删除,剪切就好

    <2>此时就无法使用ls命令了

    <3>接着可以使用cpio从rpm包中提取文件进行恢复

    <4>首先 查询ls命令属于哪个软件包

        rpm -qf /bin/ls

    <5>接着造成误删除ls命令的假象

        mv /bin/ls /tmp/

    <6>提取rpm包中的ls命令到当前所在目录下

      rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls

      .表示提取到当前目录,因此要考虑当前所在位置

      ./bin/ls表示我要提取这个文件

    <7>把ls命令复制回/bin/目录,修复文件丢失

时间: 2024-09-29 19:36:42

3-5 RPM包校验的相关文章

RPM包校验

1.RPM包校验 [[email protected]~]# rpm -V已安装的包名 选项: -V 校验指定RPM包中的文件(verify) 没有提示信息.即为没有修改 2.RPM包中文件提取(误删除文件) [[email protected]~]#rpm2cpio包全名 |\ cpio -idv.文件绝对路径 "."代表把提取内容放到当前目录下 2 代表to 转格式 rpm2cpio #将rpm包转换为cpio格式命令 cpio #是一个标准工具,它用于创建软件档案文件和从档案文件

linux软件包管理——rpm包管理

软件运行环境API:Application Programming Interface 应用程序接口(应用程序和操作系统之间的接口) 凡是符合该api标准的应用程序都可以在支持该api的操作系统上编译通过 程序源代码 --> 预处理 --> 编译 --> 汇编 --> 链接  静态编译:自身包含所有需要调用的库文件  动态编译:自身不包含,需要时调用共享库文件(.so文件)ABI:Application Binary Interface 应用程序二进制接口 规定了二进制文件的格式.

RPM包校验和提取

一.RPM包校验 [[email protected] Packages]# rpm -V 已安装的包名 #选项: #????-V????校验指定RPM包中的文件(verify) [[email protected] Packages]# vim /etc/httpd/conf/httpd.conf????????---> 对包的配置文件进行修改 [[email protected] Packages]# rpm -V httpd????????????????????---> 对修改后的包再

rpm包和源码包的一些相关知识

rpm包本地的文件所在位置: /mnt/cdrom/Packages rpm包的安装缺点是:具有很强的依赖性,在安装时比较繁琐,又时候会因为某些安装文件之间的依赖性出错. 下面列出rpm包命令管理并进行一些说明: rpm包的安装指令: rpm  -ivh  完整包名 执行这个命令前提是 本地有这个安装包,在安装后会有依赖性提示,只需按照依赖性安装即可 rpm包命名规则:httpd-manual-2.2.9.el5.i386.rpm httpd     //为软件名 2.2.9    //为版本号

Linux程序包管理之rpm包管理

Linux程序包管理 软件包管理 功能:将编译好的程序的各组成文件打包成一个或几个程序包文件,为了方便的实现程序包的安装.升级.卸载.查询.校验.数据库维护. API:Application ProgramInterface应用程序接口: ABI:Application BinaryInterface应用二进制接口: Unix-like和linux在ABI层次是相同的 linux程序包:ELF格式: 但是与Windows相差甚远 windows程序包:exe,msi格式: API层次兼容不一定A

Linux学习之RPM包管理

在linux中有人多的软件使用,比如我们使用的ifconfig,fdisk,btrfs文件系统等.可能这些软件在你原有的linux系统中并不存在,那么我们如何去使用这些工具呢.我们知道windows在需要软件的时候需要安装,当然对于linux系统一样需要安装.在linux下常用的安装工具我们使用的是rpm程序包(当然我们这边是针对CentOS而言),那么什么是rpm,如何安装rpm包以及使用rpm包做一些操作等,在下面的内容中将提到. 一.什么是RPM RPM全称为"RedHatPackage

rpm包软件管理

一.rpm介绍 linux服务器中所有的软件包安装方式有两种,一种是源码安装.另一种是二进制包安装(rpm)源码包安装的好处是适合不同的发行版本的linux,缺点是在编译过程中花费的时间很长,二进制包安装的特点是安装速度快,但缺点是32位的服务器不能安装64位服务器的安装包等. 二.rpm包包命名及依赖 1.命名规则 openssh-clients-6.6.1p1-.el7.x86_64.rpm openssh-clients       包名 6.6.1p1                 

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

已安装包校验 rpm -V 已安装的包名-V 校验指定rpm包中的文件 rpm -V pth没有任何提示,说明自安装后没有做过任何修改 rpm包中文件提取 比如对一个系统配置文件误操作,可以根据这个文件找到它所属的rpm包,然后再从rpm包中提取这个文件再覆盖被误操作文件 rpm2cpio 包全名 | cpio -idv .rpm包中文件绝对路径-i copy-in模式,还原-d 还原时自动新建目录-v 显示还原过程 rpm2cpio将rpm包转换为cpio格式的文件 cpio是一个标准工具,它

rpm包及rpm 命令详解

一.软件运行环境 API: Application Programming Interface 国际标准 POSIX: Portable OS 执行流程: 程序源代码 –> 预处理 –> 编译 –> 汇编 –> 链接 静态编译:将编译完成的程序代码以及所依赖的库文件一起打包使用 共享(动态)编译:使用独立的外置的库文件,与系统中的其他程序共享库,linux 中以 .so结尾,译为共享对象 ABI: Application Binary Interface 应用程序二进制接口 (Wi