zoukankan      html  css  js  c++  java
  • Linux软件包安装(rpm)

    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所签发的,那么公钥和私钥都是红帽公司。公钥在两个地方有,如下:

      

      首先要导入公钥,再进行检测:

      

      

  • 相关阅读:
    正则表达式
    Ajax跨域问题---jsonp
    Ajax
    字符串总结
    js 字符串加密
    jsDate()
    HDU 5430 Reflect
    HDU 5429 Geometric Progression
    HDU 5428 The Factor
    POJ 2485 Highways
  • 原文地址:https://www.cnblogs.com/reagina/p/6344915.html
Copyright © 2011-2022 走看看