1、RPM包的校验

(1)RPM包校验基本命令

[root@localhost ~]# rpm -Va
选项:
-Va校验本机已经安装的所有软件包(一般不用,需要验证哪个包就单独验证。) [root@localhost ~]# rpm -V 已安装的包名
选项:
-V校验指定RPM包中的文件(verify),常用。 [root@localhost ~]# rpm -Vf 系统文件名(通过rpm包安装出来的,自己创建的不行。)
选项:
-Vf校验某个系统文件是否被修改

(2)校验某个系统文件是否被修改举例

# 校验httpd软件包,可以看到如果新安装的软件,没有动过任何文件,验证是没有任何结果的。
[root@localhost ~]# rpm -V httpd # 修改一下httpd配置文件,加一个空行。
[root@localhost ~]# vi /etc/httpd/conf/httpd.conf # 再次验证
[root@localhost ~]# rpm -V httpd
S.5....T. c /etc/httpd/conf/httpd.conf
验证内容 文件类 型文件名 # 上边提示的信息是 /etc/httpd/conf/httpd.conf文件和刚装完的状态不同。
# 哪里不同,在`S.5....T.`提示了。

提示:

  • 最前面共有8个信息内容,是表示验证内容的。
  • 文件名前面的c是表示这是个配置文件(configuration)。
  • 最后是文件名。

(3)验证内容中8个信息的具体内容

  • S:文件大小是否改变。
  • M:文件的类型或文件的权限(rwx)是否被改变。
  • 5:文件MD5校验和是否改变(可以看成文件内容是否改变)。
  • D:设备的主从代码是否改变。
  • L:文件路径是否改变。
  • U:文件的属主(所有者)是否改变。
  • G:文件的属组是否改变。
  • T:文件的修改时间是否改变。

注意:

问什么验证了文件大小是否改变,还需要验证文件的内容是否改变?

也有可能没有新增或者删除文件的内容,只有修改了一个字母或者文字,源文件大小没有改变,但是文件的内容已经改变了。

(4)文件类型有哪些

  • c:配置文件(config file)。
  • d:普通文档(documentation)。
  • g:“鬼”文件(ghostfile),很少见,就是该文件不应该被这个RPM包包含(说明这个RPM包出现了异常)。
  • l:授权文件(license file)。
  • r:描述文件(readme)。

2、RPM包的证书

(1)数字证书

上面的校验方法只能对已经安装的RPM包中的文件进行校验,但是如果RPM包本身就被动过手脚,那么校验就不能解决问题了,我们就必须使用数字证书验证了。

(2)数字证书有以下特点

  1. 首先必须找到原厂提供的公钥文件,然后进行安装。

    这个公钥文件在光盘和系统中都能找到。
  2. 再安装RPM包时,会去提取RPM包中的证书信息,然后和本机安装的原厂证书进行验证。
  3. 如果验证通过,则允许安装;如果验证不通过,则不允许安装并警告。

(3)数字证书位置

其实在CentOS6.8的第一张光盘中就有,当然它默认也会放在系统中。

  1. 数字证书在光盘中的位置
    [root@localhost ~ ] # ll /mnt/cdrom/RPM-GPG-KEY-Cent0S-6
    -r--r--r--2 root root 17067月204:21/mnt/cdrom/RPM-GPG-KEY-CentOS-6

  2. 系统中的数字证书位置
    [root@localhost ~ ] #ll /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    -rw-r--r-.1 root root 17066月2617:29/etc/pki/rpm-gpg/RPM-GPG-KEY-Cent0S-6

(4)数字证书导入

[root@localhost ~ ] # rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
选项:
--import:导入数字证书

我们如何查询系统中安装好的数字证书呢?

命令如下:

[root@localhost ~ ] # rpm -qa | grep gpg-pubkey
gpg-pubkey-c105b9de-4e0fd3a3

『学了就忘』Linux软件包管理 — 43、RPM包的校验和证书的更多相关文章

  1. 『学了就忘』Linux软件包管理 — 40、Linux系统软件包介绍

    目录 1.Linux系统软件包分类 2.源码包说明 3.二进制包说明 4.RPM包的优缺点 4.RPM包的两种安装方法 5.总结 1.Linux系统软件包分类 Linux系统下的软件包只有源码包和二进 ...

  2. 『学了就忘』Linux软件包管理 — 42、对RPM软件包的查询操作

    目录 1.查询RPM软件包是否安装 2.查询系统中所有已安装的RPM软件包 3.查询RPM软件包的详细信息 4.查询RPM软件包中的文件列表 5.查询系统文件属于哪个RPM包 6.查询RPM软件包所依 ...

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

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

  4. 『学了就忘』Linux软件包管理 — 47、Linux源码包的安装和卸载

    目录 1.源码包安装服务的注意事项 2.源码包安装服务的过程 3.源码包安装服务的删除 4.源码包安装服务的启动 5.源码包安装服务的关闭 1.源码包安装服务的注意事项 (1)安装服务选择哪种软件包? ...

  5. 『学了就忘』Linux软件包管理 — 49、拓展:Linux中通过脚本安装程序

    目录 1.脚本程序简介 2.Webmin安装 (1)简介 (2)安装 (3)使用 1.脚本程序简介 脚本程序包并不多见,所以在软件包分类中并没有把它列为一类.它更加类似于Windows下的程序安装,有 ...

  6. 『学了就忘』Linux软件包管理 — 46、yum命令详细介绍

    目录 1.yum命令的查询操作 2.使用yum命令安装服务 3.使用yum命令升级服务 4.使用yum命令卸载服务 5.yum组管理命令 (1)查询可以安装的软件组 (2)查询软件组内包含的软件 (3 ...

  7. 『学了就忘』Linux软件包管理 — 45、yum源文件详细说明

    目录 1.yum源文件解析 2.查看yum源文件 3.搭建本地光盘yum源 第一步: 第二步: 第三步: 提示:RPM包的在线安装就是yum安装,yum安装需要依据yum源文件内容配置来寻找软件.本文 ...

  8. 『学了就忘』Linux软件包管理 — 48、给源码包打补丁

    目录 1.补丁的生成 2.补丁的打入 在以前的软件源码包,需要打补丁的时候比较多.现在的源码包很少进行打补丁了,因为根据需求安装不同的版本即可,比较商业化了.(也就是知道如何给源码包打补丁就可以了,了 ...

  9. 『学了就忘』Linux服务管理 — 77、RPM包安装基于xinetd的服务的管理

    目录 1.基于xinetd服务的启动管理 (1)telnet服务安装 (2)telnet服务启动 2.基于xientd服务的自启动管理 现在Linux系统中基于xinetd的服务越来越少了,但Linu ...

随机推荐

  1. 通用JS9

    Symbol.toStringTag 该符号作为一个属性表示"一个字符串,该字符串用于创建对象的默认字符串描述."由内置方法Object.prototype.toString()使 ...

  2. Django整理(二) - 视图和模板的初步使用

    Django中的视图 · Django使用视图来编写web应用的业务逻辑 · Django的视图也就是一个函数,可称为视图函数 · 视图定义在应用的view.py文件中 · 视图需要绑定一个URL地址 ...

  3. NOIP模拟66

    T1 接力比赛 解题思路 其实就是一个背包 DP ,也没啥好说的也就是一个优化,每次枚举之前的前缀和. 比较妙的就是一个 random_shuffle 可以整掉部分卡人的数据(但是好像 sort 一下 ...

  4. firewalld dbus接口使用指南

    firewalld,一个基于动态区的iptables/nftables守护程序,自2009年左右开始开发,最新版本 - 防火墙0.6.3 - 发布于2018年10月11日.主要的开发人员是托马斯·沃纳 ...

  5. Java秘诀!零基础怎样快速学习Java?

    对于零基础想学Java的朋友,其实一开始最应该做的就是定好学习目标和端正学习态度,切记不要三天打鱼两天晒网! 首先你是零基础,现在急需把Java学好,在保证学习质量的同时,用最短的时间学好Java应该 ...

  6. Apache Dubbo理解和应用

    官网:https://dubbo.apache.org/ slogan:高性能.轻量级的开源Java RPC框架 提供了六大核心能力:面向接口代理的高性能RPC调用,智能容错和负载均衡,服务自动注册和 ...

  7. 好奇!仅 13kB 大小的游戏,源码长啥样?

    这个马赛克风格的表情正好 13Kb,有人竟然能用一个表情大小的空间,制作个游戏出来.我就不信这么点的地儿,能写出个花来?游戏能好玩吗?因为这些游戏点开就能玩,我抱着试一试的心态把玩了一会. 事实证明是 ...

  8. 设计的MOS管三极管简单开关电路驱动能力不够3

    16楼说得非常明白,补充一点,R3如果不要,会有下冲产生.4 Q: Z/ G  G1 s8 Z- } 能解释下为什么会产生过冲吗?9 i, P* D* X) u. t/ b  ^ 让我们这些菜鸟学习学 ...

  9. wpa_supplicant启动出错rfkill: Cannot open RFKILL control device

    在板子是调试网络,千辛万苦把wpa_supplicant及其依赖都移植编译进来了,在板子上调试启动的时候启动报错了 D/wpa_supplicant( 1152): wpa_supplicant v2 ...

  10. 链表中倒数第K个结点 牛客网 剑指Offer

    链表中倒数第K个结点 牛客网 剑指Offer 题目描述 输入一个链表,输出该链表中倒数第k个结点. # class ListNode: # def __init__(self, x): # self. ...