『学了就忘』Linux软件包管理 — 43、RPM包的校验和证书
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)数字证书有以下特点
- 首先必须找到原厂提供的公钥文件,然后进行安装。
这个公钥文件在光盘和系统中都能找到。 - 再安装RPM包时,会去提取RPM包中的证书信息,然后和本机安装的原厂证书进行验证。
- 如果验证通过,则允许安装;如果验证不通过,则不允许安装并警告。
(3)数字证书位置
其实在CentOS6.8
的第一张光盘中就有,当然它默认也会放在系统中。
- 数字证书在光盘中的位置
[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
- 系统中的数字证书位置
[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包的校验和证书的更多相关文章
- 『学了就忘』Linux软件包管理 — 40、Linux系统软件包介绍
目录 1.Linux系统软件包分类 2.源码包说明 3.二进制包说明 4.RPM包的优缺点 4.RPM包的两种安装方法 5.总结 1.Linux系统软件包分类 Linux系统下的软件包只有源码包和二进 ...
- 『学了就忘』Linux软件包管理 — 42、对RPM软件包的查询操作
目录 1.查询RPM软件包是否安装 2.查询系统中所有已安装的RPM软件包 3.查询RPM软件包的详细信息 4.查询RPM软件包中的文件列表 5.查询系统文件属于哪个RPM包 6.查询RPM软件包所依 ...
- 『学了就忘』Linux软件包管理 — 44、在RPM包中提取文件
目录 1.RPM包中文件的提取 2.在RPM包中提取文件的操作 (1)cpio命令介绍 (2)提取RPM包中文件 1.RPM包中文件的提取 为什么要做这个事呢? 在操作Linux系统的时候误删除一个文 ...
- 『学了就忘』Linux软件包管理 — 47、Linux源码包的安装和卸载
目录 1.源码包安装服务的注意事项 2.源码包安装服务的过程 3.源码包安装服务的删除 4.源码包安装服务的启动 5.源码包安装服务的关闭 1.源码包安装服务的注意事项 (1)安装服务选择哪种软件包? ...
- 『学了就忘』Linux软件包管理 — 49、拓展:Linux中通过脚本安装程序
目录 1.脚本程序简介 2.Webmin安装 (1)简介 (2)安装 (3)使用 1.脚本程序简介 脚本程序包并不多见,所以在软件包分类中并没有把它列为一类.它更加类似于Windows下的程序安装,有 ...
- 『学了就忘』Linux软件包管理 — 46、yum命令详细介绍
目录 1.yum命令的查询操作 2.使用yum命令安装服务 3.使用yum命令升级服务 4.使用yum命令卸载服务 5.yum组管理命令 (1)查询可以安装的软件组 (2)查询软件组内包含的软件 (3 ...
- 『学了就忘』Linux软件包管理 — 45、yum源文件详细说明
目录 1.yum源文件解析 2.查看yum源文件 3.搭建本地光盘yum源 第一步: 第二步: 第三步: 提示:RPM包的在线安装就是yum安装,yum安装需要依据yum源文件内容配置来寻找软件.本文 ...
- 『学了就忘』Linux软件包管理 — 48、给源码包打补丁
目录 1.补丁的生成 2.补丁的打入 在以前的软件源码包,需要打补丁的时候比较多.现在的源码包很少进行打补丁了,因为根据需求安装不同的版本即可,比较商业化了.(也就是知道如何给源码包打补丁就可以了,了 ...
- 『学了就忘』Linux服务管理 — 77、RPM包安装基于xinetd的服务的管理
目录 1.基于xinetd服务的启动管理 (1)telnet服务安装 (2)telnet服务启动 2.基于xientd服务的自启动管理 现在Linux系统中基于xinetd的服务越来越少了,但Linu ...
随机推荐
- 通用JS9
Symbol.toStringTag 该符号作为一个属性表示"一个字符串,该字符串用于创建对象的默认字符串描述."由内置方法Object.prototype.toString()使 ...
- Django整理(二) - 视图和模板的初步使用
Django中的视图 · Django使用视图来编写web应用的业务逻辑 · Django的视图也就是一个函数,可称为视图函数 · 视图定义在应用的view.py文件中 · 视图需要绑定一个URL地址 ...
- NOIP模拟66
T1 接力比赛 解题思路 其实就是一个背包 DP ,也没啥好说的也就是一个优化,每次枚举之前的前缀和. 比较妙的就是一个 random_shuffle 可以整掉部分卡人的数据(但是好像 sort 一下 ...
- firewalld dbus接口使用指南
firewalld,一个基于动态区的iptables/nftables守护程序,自2009年左右开始开发,最新版本 - 防火墙0.6.3 - 发布于2018年10月11日.主要的开发人员是托马斯·沃纳 ...
- Java秘诀!零基础怎样快速学习Java?
对于零基础想学Java的朋友,其实一开始最应该做的就是定好学习目标和端正学习态度,切记不要三天打鱼两天晒网! 首先你是零基础,现在急需把Java学好,在保证学习质量的同时,用最短的时间学好Java应该 ...
- Apache Dubbo理解和应用
官网:https://dubbo.apache.org/ slogan:高性能.轻量级的开源Java RPC框架 提供了六大核心能力:面向接口代理的高性能RPC调用,智能容错和负载均衡,服务自动注册和 ...
- 好奇!仅 13kB 大小的游戏,源码长啥样?
这个马赛克风格的表情正好 13Kb,有人竟然能用一个表情大小的空间,制作个游戏出来.我就不信这么点的地儿,能写出个花来?游戏能好玩吗?因为这些游戏点开就能玩,我抱着试一试的心态把玩了一会. 事实证明是 ...
- 设计的MOS管三极管简单开关电路驱动能力不够3
16楼说得非常明白,补充一点,R3如果不要,会有下冲产生.4 Q: Z/ G G1 s8 Z- } 能解释下为什么会产生过冲吗?9 i, P* D* X) u. t/ b ^ 让我们这些菜鸟学习学 ...
- wpa_supplicant启动出错rfkill: Cannot open RFKILL control device
在板子是调试网络,千辛万苦把wpa_supplicant及其依赖都移植编译进来了,在板子上调试启动的时候启动报错了 D/wpa_supplicant( 1152): wpa_supplicant v2 ...
- 链表中倒数第K个结点 牛客网 剑指Offer
链表中倒数第K个结点 牛客网 剑指Offer 题目描述 输入一个链表,输出该链表中倒数第k个结点. # class ListNode: # def __init__(self, x): # self. ...