Linux下的RPM命令

     rpm:
          数据库:/var/lib/rpm          
     rpmbuild:

安装、查询、卸载、升级、校验、数据库的重建等工作;

rpm命名:
包:组成部分
          主包:
               bind—9.7.1—1.i586.e15.rpm
          子包:
               bind—libs—9.7.1—1.i586.e15.rpm
包名格式:
           name—version—release.arch.rpm       
           bind—major.minor.release—release.arch.rpm
主版本号:重大改变
次版本号:某个子功能发生重大变化
发行号:修改了部分bug,调整了一点功能

rpm包:
     二进制格式(绝大部分)
     源码格式


rpm:
    1、 安装:
rpm -i    /path/to/somefile
       -h:以#显示进度;每个#表示2%
       -v:显示详细过程
       -vv:显示更详细过程        

rpm -ivh    /path/to/somefile
          --nodeps:忽略依赖关系;
          --replacepkgs:重新安装,替换原有安装;          
          --force: 强行安装,可以实现重装或降级;
     2、查询
rpm  -q  PACKAGE_NAME  :查询指定的包是否已经安装好
rpm  -qa  :查询已经安装的所有包

rpm  -qi  PACKAGE_NAME:查询指定包的说明信息;
rpm  -ql  PACKAGE_NAME:查询指定包安装后生成的文件列表
rpm  -qc  PACKAGE_NAME:查询指定包安装的配置文件
rpm  -qd  PACKAGE_NAME:查询指定包安装的帮助文件

rpm  -q --scripts PACKAGE_NAME:查询指定包中包含的脚本

rpm  -qf   /path/to/somefile:查询指定的文件是由哪个rpm包安装生成的



如果某个rpm包尚未安装,我们需要查询其说明信息、安装以后会生成的文件:
rpm  -qpi  /path/to/somefile
rpm  -qpl  /path/to/somefile


     3、升级
rpm  -Uvh      /path/to/new_package_file:如果装有老版本,则升级,否则安装
rpm  -Fvh   /path/to/new_package_file:如果装有老版本,则升级,否则退出
          --oldpackage:降级

     4、卸载
rpm  -e  PACKAGE_NAME
          --nodeps

     5、校验
rpm  -V      PACKAGE_NAME

     6、重建数据库
rpm  
        --rebuliddb:重建数据库,一定会重新建立。
        --initdb:初始化数据库 ,没有才建立,有就不用建立。

     7、检验来源合法性,及软件包完整性
加密解密:
     对称:加密解密使用同一个秘钥
     公钥:一对儿秘钥,公钥,私钥;公钥隐含于私钥,可以提取出来,并公开出去;
     单向:

#ls  /etc/pki/prm-gpg/
     RPM-GPG-KEY-redhat-release

rpm  -K   PACKAGE_NAME
     dsa,gpg:验证来源合法性,也验证签名:可以使用--nosignature略过此项
     sha1,md5:验证软件包完整性,可以使用--nodigest略过此项


rpm  --import     /etc/pki/prm-gpg/ RPM-GPG-KEY-redhat-release
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章