原文:https://blog.csdn.net/capecape/article/details/78529159

RPM包与源码包的区别
1、软件包分类

源码包:C源代码包

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

2、源码包

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

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

3、RPM包

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

httpd-2.4.6-67.el7.centos.x86_64.rpm
1
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包的安装格式

rpm -ivh 包全名
选项:
-i(install) 安装
-v(verbose) 显示详细信息
-h(hash) 显示进度
--nodeps 不检测依赖性
1
2
3
4
5
6
7
8
举例:

[root@localhost Packages]# rpm -ivh httpd-2.4.6-67.el7.centos.x86_64.rpm
1
可能会有很多依赖性问题出现,根据一个个依赖性继续rpm安装就可以了

3、RPM包升级

#RPM包的升级格式

rpm -Uvh 包全名
选项:
-U (upgrade) 升级
1
2
3
4
5
过程和安装完全一样。

4、RPM包的卸载

#RPM包的卸载格式

rpm -e 包名
选项:
-e (erase) 卸载
--nodeps 不检测依赖性
1
2
3
4
5
6
举例:

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

5、RPM包的查询

查询是否安装:
[root@localhost ~]# rpm -q 包名
#查询包是否安装
选项:
-q 查询(query)

[root@localhost ~]# rpm -qa
#查询所有已经安装的RPM包
选项:
-a 所有
1
2
3
4
5
6
7
8
9
查询软件包的详细信息:
[root@localhost ~]# rpm -qi 包名
#查询软件包的详细信息
选项:
-i 查询软件信息(information)
1
2
3
4
查询包中文件安装位置
[root@localhost ~]# rpm -ql 包名
#查询包中文件安装位置
选项:
-l 列表(list)
1
2
3
4
查询系统文件属于哪个RPM包
[root@localhost ~]# rpm -qf 系统文件名
选项:
-f 查询系统文件属于哪个RPM包(file)
1
2
3
查询软件包的依赖性
[root@localhost ~]# rpm -qR 包名
选项:
-R 查询软件包的依赖性(requires)

(转) centos7 RPM包之rpm命令的更多相关文章

  1. Linux学习之RPM包管理-rpm命令管理(十六)

    Linux学习之RPM包管理-rpm命令管理 目录 简介 RPM包依赖性 包全名与包名 rpm软件包安装 rpm软件包卸载 升级降级rpm软件包 rpm软件包的查询 rpm软件包校验 简介 RPM是R ...

  2. 15. Linux提取RPM包文件(cpio命令)详解

    在讲解如何从 RPM 包中提取文件之前,先来系统学习一下 cpio 命令.cpio 命令用于从归档包中存入和读取文件,换句话说,cpio 命令可以从归档包中提取文件(或目录),也可以将文件(或目录)复 ...

  3. Linux课程---9、安装RPM包(RPM的全称是什么)

    Linux课程---9.安装RPM包(RPM的全称是什么) 一.总结 一句话总结: redhat package management 1.在Packages中查找和php相关的文件如何查找? ls ...

  4. 从rpm包提取rpm spec 的几种方法

    包含了源码包 先安装,然后在rpmbuild 目录直接可以查看文件 不用安装 ,使用rpm2cpio rpm2cpio myrpm.src.rpm | cpio -civ '*.spec' 没有源码 ...

  5. yum 下载rpm包 安装rpm包依赖关系

    方法一:yumdownloader 工具 1.安装工具包 yum install yum-utils -y 2.下载一个RPM包 yumdownloader <package-name> ...

  6. 【Linux】CentOS7上rpm命令批量卸载删除模糊rpm包名

    例如,我要删除如下文件名匹配上wine的所有文件

  7. CentOS7使用rpm包安装MySQL

    说明 本文写于2017-05-20,使用MySQL-5.7.18.操作系统为64位CentOS Linux release 7.2.1511 (Core),以桌面形式安装. 卸载MariaDB Cen ...

  8. Linux RPM 命令参数使用详解 查看 rpm包依赖性

    转载自:http://blog.csdn.net/deutschester/article/details/6309521 rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两种 ...

  9. Linux CentOS7 VMware 安装软件包的三种方法、rpm包介绍、rpm工具用法、yum工具用法、yum搭建本地仓库

    一.安装软件包的三种方法 Linux下游三种安装方法,rpm工具.yum工具.源码包.rpm按装一个程序包时,有可能因为该程序包依赖另一个程序包而无法安装:yum工具,可以连同依赖的程序包一起安装. ...

随机推荐

  1. Linux Mysql创建新用户并允许远程连接

    第一步 登陆mysql: mysql-u 数据库用户名 -h 数据库IP -p 根据提示 输入数据库密码 第二步: GRANT ALL PRIVILEGES ON *.* TO '自定义用户名'@'% ...

  2. jperf windows

    jperf windows版是款简单实用的网络性能测试的工具:它也是款图形界面的iperf程序,可以这进行使用JPerf程序的时候,快速的进行简化您的命令行参数,而且这进行测试结束之后,还是以图形化的 ...

  3. linux启动脚本

    1. linux启动脚本 :  /etc/init.d/脚本例如:/etc/init.d/iptables start init.d/ 下面的每一个文件就是一个启动脚本 2. 以上的/etc/init ...

  4. DFS 算法模板

    dfs算法模板: 1.下一层是多节点的dfs遍历 def dfs(array or root, cur_layer, path, result): if cur_layer == len(array) ...

  5. 为什么要指定HashMap的容量?HashMap指定容量初始化后,底层Hash数组已经被分配内存了吗?

    为什么要指定HashMap的容量? 首先创建HashMap时,指定容量比如1024后,并不是HashMap的size不是1024,而是0,插入多少元素,size就是多少: 然后如果不指定HashMap ...

  6. 在linux系统中如何通过shell脚本批量设置redis键值对

    业务逻辑:批量设置redis中手机号的验证码为888888: 准备shell脚本如下:将18888888100~18888888110的手机号验证码设置为888888: #!/bin/bash ;i& ...

  7. GitHub使用方法与三步教程

    git下载地址:https://git-scm.com/downloads 下一步下一步就好了 在cmd输入 git --version 在桌面空白右键 Git Bash Here命令行 输入 git ...

  8. iOS应用代码注入防护

    在应用开发过程中,我们不仅仅需要完成正常的业务逻辑,考虑应用性能.代码健壮相关的问题,我们有时还需要考虑到应用安全的问题.那么应用安全的问题涉及到很多方面.比如防止静态分析的,代码混淆.逻辑混淆:防止 ...

  9. jQuery--data()方法

    data() 函数用于在当前jQuery对象所匹配的所有元素上存取数据. 通过data()函数存取的数据都是临时数据,一旦页面刷新,之前存放的数据都将不复存在. 该函数属于jQuery对象(实例).如 ...

  10. scala 学习笔记--集合

    1.scala集合的null 是nil 而不是null 2.set的三个方法union,intersect,diff union--合并去重 intersect--交集 diff--a减去(a和b交集 ...