当前位置:   article > 正文

centos7 RPM包之rpm命令_linux centos7 rpm详解

linux centos7 rpm详解

一、RPM包与源码包的区别


1、软件软件包分类

源码包:C源代码包

rpm包:编译之后的二进制包

2、源码包

优点:开源;可以自由选择所需功能;可看源代码;卸载方便(直接删除安装位置);

缺点:安装步骤过多;编译时间过长;

3、RPM包

优点:使用简单,只需要几个命令就可以实现包的安装、升级、查询、卸载;安装速度快;
缺点:不能看源代码;功能选择不如源代码灵活;依赖性;


二、RPM包命名和依赖性


1、RPM包的命名规则

httpd-2.4.6-67.el7.centos.x86_64.rpm

httpd    软件包名
2.4.6    软件版本
67    软件发行的次数
el7.centos    适合的linux平台
x86_64    适合的硬件平台
rpm    rpm包扩展名


2、RPM包的依赖性

树形依赖性:a -> b -> c,即a依赖b,b依赖c
环形依赖:a -> b -> c -> a
模块依赖:模块依赖查询网站:www.rpmfind.com


三、RPM包的安装、升级、卸载和查询


1、包全名和包名

包全名    包名
例如:全名 httpd-2.4.6-67.el7.centos.x86_64.rpm    包名httpd
操作没有安装的软件包时,使用包全名,操作的已经安装的软件包时,使用包名

2、RPM安装

rpm -ivh 包全名
选项:
    -i(install)    安装
    -v(verbose)    显示详细信息
    -h(hash)       显示进度
    --nodeps       不检测依赖性

举例:

[root@localhost Packages]# rpm -ivh httpd-2.4.6-67.el7.centos.x86_64.rpm 

可能会有很多依赖性问题出现,根据一个个依赖性继续rpm安装就可以了

3、RPM包升级

rpm -Uvh 包全名
选项:
    -U (upgrade)    升级

过程和安装完全一样。

4、RPM包的卸载

rpm -e 包名
选项:
    -e (erase)    卸载
    --nodeps      不检测依赖性

举例:

  1. [root@localhost Packages]# rpm -e httpd
  2. 错误:依赖检测失败:
  3.         httpd = 2.4.6-67.el7.centos 被 (已安裝) httpd-devel-2.4.6-67.el7.centos.x86_64 需要
  4. [root@localhost Packages]# rpm -e httpd-devel 
  5. [root@localhost Packages]# rpm -e httpd
  6. 注:卸载要按照安装依赖性的反向卸载

5、RPM包的查询

查询是否安装:
         rpm -q 包名
选项:
    -q    查询(query)

查询所有已经安装的RPM包
         rpm -qa

选项:
    -a    所有


查询软件包的详细信息
         rpm -qi 包名

选项:
    -i    查询软件信息(information)


查询包中文件安装位置
         rpm -ql 包名
选项:
    -l    列表(list)


查询系统文件属于哪个RPM包
        rpm -qf 系统文件名
选项:
    -f    查询系统文件属于哪个RPM包(file)


查询软件包的依赖性
         rpm -qR 包名
选项:
    -R    查询软件包的依赖性(requires)

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号