(转) centos7 RPM包之rpm命令
原文: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命令的更多相关文章
- Linux学习之RPM包管理-rpm命令管理(十六)
Linux学习之RPM包管理-rpm命令管理 目录 简介 RPM包依赖性 包全名与包名 rpm软件包安装 rpm软件包卸载 升级降级rpm软件包 rpm软件包的查询 rpm软件包校验 简介 RPM是R ...
- 15. Linux提取RPM包文件(cpio命令)详解
在讲解如何从 RPM 包中提取文件之前,先来系统学习一下 cpio 命令.cpio 命令用于从归档包中存入和读取文件,换句话说,cpio 命令可以从归档包中提取文件(或目录),也可以将文件(或目录)复 ...
- Linux课程---9、安装RPM包(RPM的全称是什么)
Linux课程---9.安装RPM包(RPM的全称是什么) 一.总结 一句话总结: redhat package management 1.在Packages中查找和php相关的文件如何查找? ls ...
- 从rpm包提取rpm spec 的几种方法
包含了源码包 先安装,然后在rpmbuild 目录直接可以查看文件 不用安装 ,使用rpm2cpio rpm2cpio myrpm.src.rpm | cpio -civ '*.spec' 没有源码 ...
- yum 下载rpm包 安装rpm包依赖关系
方法一:yumdownloader 工具 1.安装工具包 yum install yum-utils -y 2.下载一个RPM包 yumdownloader <package-name> ...
- 【Linux】CentOS7上rpm命令批量卸载删除模糊rpm包名
例如,我要删除如下文件名匹配上wine的所有文件
- CentOS7使用rpm包安装MySQL
说明 本文写于2017-05-20,使用MySQL-5.7.18.操作系统为64位CentOS Linux release 7.2.1511 (Core),以桌面形式安装. 卸载MariaDB Cen ...
- Linux RPM 命令参数使用详解 查看 rpm包依赖性
转载自:http://blog.csdn.net/deutschester/article/details/6309521 rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两种 ...
- Linux CentOS7 VMware 安装软件包的三种方法、rpm包介绍、rpm工具用法、yum工具用法、yum搭建本地仓库
一.安装软件包的三种方法 Linux下游三种安装方法,rpm工具.yum工具.源码包.rpm按装一个程序包时,有可能因为该程序包依赖另一个程序包而无法安装:yum工具,可以连同依赖的程序包一起安装. ...
随机推荐
- Linux Mysql创建新用户并允许远程连接
第一步 登陆mysql: mysql-u 数据库用户名 -h 数据库IP -p 根据提示 输入数据库密码 第二步: GRANT ALL PRIVILEGES ON *.* TO '自定义用户名'@'% ...
- jperf windows
jperf windows版是款简单实用的网络性能测试的工具:它也是款图形界面的iperf程序,可以这进行使用JPerf程序的时候,快速的进行简化您的命令行参数,而且这进行测试结束之后,还是以图形化的 ...
- linux启动脚本
1. linux启动脚本 : /etc/init.d/脚本例如:/etc/init.d/iptables start init.d/ 下面的每一个文件就是一个启动脚本 2. 以上的/etc/init ...
- DFS 算法模板
dfs算法模板: 1.下一层是多节点的dfs遍历 def dfs(array or root, cur_layer, path, result): if cur_layer == len(array) ...
- 为什么要指定HashMap的容量?HashMap指定容量初始化后,底层Hash数组已经被分配内存了吗?
为什么要指定HashMap的容量? 首先创建HashMap时,指定容量比如1024后,并不是HashMap的size不是1024,而是0,插入多少元素,size就是多少: 然后如果不指定HashMap ...
- 在linux系统中如何通过shell脚本批量设置redis键值对
业务逻辑:批量设置redis中手机号的验证码为888888: 准备shell脚本如下:将18888888100~18888888110的手机号验证码设置为888888: #!/bin/bash ;i& ...
- GitHub使用方法与三步教程
git下载地址:https://git-scm.com/downloads 下一步下一步就好了 在cmd输入 git --version 在桌面空白右键 Git Bash Here命令行 输入 git ...
- iOS应用代码注入防护
在应用开发过程中,我们不仅仅需要完成正常的业务逻辑,考虑应用性能.代码健壮相关的问题,我们有时还需要考虑到应用安全的问题.那么应用安全的问题涉及到很多方面.比如防止静态分析的,代码混淆.逻辑混淆:防止 ...
- jQuery--data()方法
data() 函数用于在当前jQuery对象所匹配的所有元素上存取数据. 通过data()函数存取的数据都是临时数据,一旦页面刷新,之前存放的数据都将不复存在. 该函数属于jQuery对象(实例).如 ...
- scala 学习笔记--集合
1.scala集合的null 是nil 而不是null 2.set的三个方法union,intersect,diff union--合并去重 intersect--交集 diff--a减去(a和b交集 ...