linux 软件包管理

一、软件包分类

  1、源码包:编译慢,安装时间长

    脚本安装包

    源码包优点:

    ①、开源,如果有足够的能力,可以修改源代码

    ②、可以自由选择所需的功能

    ③、软件是编译安装,所以更加适合自己的系统。更加稳定效率也更加高

    ④、卸载方便:直接安装的目录文件夹就可以

    源码包缺点:

    ①、安装步骤过多,尤其安装较大的软件集合时,容易出现拼写错误

    ②、编译过程时间较长,安装比二进制安装时间长

    ③、因为是编译安装,安装过程中一旦报错新手很难解决

  2、二进制包(RPM包、系统默认包)

    优点:

    ①、包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载

    ②、安装速度比源码包安装快的多

    缺点:

    ①、经过编译,不再可以看到源代码

    ②、功能选择不如源码包灵活

    ③、依赖性

二、RPM包安装管理-rpm命令管理

   1、RPM包命名原则

    httpd-2.2.15-15.el6.centos.1.i686.rpm      这是包全名

    httpd                   软件包名

    2.2.15       软件版本

    15        软件发布的次数

    el6.centos           适合的Linux平台

    i686      适合的硬件平台

    rpm      rpm包扩展名

  2、RPM包依赖性

    树形依赖: a→b→c

    环形依赖:a→b→c→a

    模块依赖:模块依赖查询网站:www.rpmfind.net。模块依赖一般是so等结尾

三、RPM包安装管理-yum在线管理

  这个命令可以在线下载所有包的依赖包或者依赖的模块

四、rpm命令管理-安装升级与卸载

     包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径

  包名:操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm/中的数据库

  1、RPM安装

    rpm -ivh 包全名

    选项:

      -i(install)       安装

      -v(verbose)   显示详细信息

      -h(hash)        显示进度

      --nodeps            不检测依赖性

  2、rpm包升级

    rpm -Uvh 包全名

    选项:

      -U (upgrade)  升级

  3、rpm卸载

    rpm -e 包名

    选项:

      -e(erase) 卸载

      --nodeps      不检查依赖性

五、RPM命令管理-查询

  1、查询是否安装

    ① 查询包是否安装

      命令:rpm -q 包名

      选项: -q 查询(query)

    ②  查询所有已经安装的rpm包

      命令:rpm -qa

      选项: -a 所有(all)

      示例:rpm -qa | grep httpd   ( |  grep  是管道符,筛选的意思)

  2、查询软件包详细信息

    命令:rpm -qi 包名

    选项:

      -i  查询软件信息(information)

      -p 查询未安装包信息(package)这时后面是跟包全名

  3、查询包中文件安装位置

    

   4、查询系统文件属于哪个RPM包

    

  5、查询软件包的依赖性

      

     

六、RPM包校验

  

  

   

 七、RPM包中文件提取

  

   

  

原文地址:https://www.cnblogs.com/jichuang/p/13526628.html