标签:做了 pre lin 测试 证明 node for 变化 str
rpm(安装、查询、卸载、升级、校验)
安装
通常情况下使用指令 rpm -ivh 进行安装
-i 安装
-v 显示详细信息
-h 显示进度条
--nodeps (取消依赖关系,装上之后极有可能不能用)
--replacefiles (产生的文件冲突时,替换覆盖)
--replacepkgs (当批量(组)安装时,可能有些包已经安装了,为了避免交互,使用该参数,替换掉已经安装的软件包)
--prefix (指明安装路径)如果不指明参数,文件会被安装到固定的地方。
rpm包现在没有能力解决依赖关系。
查询
-q(query)-a(all)-------》 -qa
-i(information)--------》 -qi 包名称
-qip 包名称以及路径(查看没有安装的包的信息)
-l(list)---------》-ql 包名称
-qlp 包名称以及路径(查看没有安装的rpm包中包含了哪些东西)
-f(filesbypkg)---------》(查看文件属于哪个软件包)
卸载
-e 包名称
升级
-Uvh 升级 安装
-Fvh 升级
校验
在系统里只要安装一个软件包,都会把软件包里相关的所有文件放到/var/lib/rpm/目录下,留有相关的记录。所以想比对现在的情况和这里面的库到底有什么变化的时候,可以使用 -V校验。
S:表示size,大小发生变化
5:表示MD5的指纹和原来库里保存的不一样(MD5是一种哈希函数,利用MD5可以为原文生成指纹,原文如果一模一样,指纹也就一样)。
T:表示时间戳发生变化。
c:表示这是一个配置文件。
没有任何信息说明没有做任何改变。
数字签名:真实性 完整性
rpm --import PUBKEY
rpm -K
做数字签名的时候把得到的摘要值(原文经MD5/SHA1得到的值)进行加密,用发送方的私钥来实施加密,把加密结果附属到原文后面,将整个结果经网络中传递,如果有人接到了这个信息,看得到原文,但是加密的指纹看不到。要想看到加密的指纹,需要有发送方的公钥,公钥是公开的,私钥要严格保管。重新做的原文的摘要和用公钥解开的摘要一样,说明原文没有改过,可以测试文件是否受到破坏,这种特性叫完整性。真实性(不可抵赖):由于用对方的公钥可以解开摘要,因此可以确认是对方发送的。
这些软件包都可以从一些官网上去下载,红帽公司为了证明是自己提供的软件包,做了一些签名做到真实性和完整性。
如何验证rpm包的数字签名?每一个包都做了数字签名,要想打开摘要,必须要有对方的公钥,而如果是红帽官方Redhat所签发的,那么公钥和私钥都是红帽公司。公钥在两个地方有,如下:
首先要导入公钥,再进行检测:
标签:做了 pre lin 测试 证明 node for 变化 str
原文地址:http://www.cnblogs.com/reagina/p/6344915.html