美文网首页
rpm命令笔记

rpm命令笔记

作者: 李小斌_2018 | 来源:发表于2020-03-19 17:32 被阅读0次

RPM全称是Red Hat Package Manager(Red Hat包管理器),是由红帽公司最先发布的一种用来打包软件的的文件格式,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。他是一种特定的用来安装,卸载软件等操作的专门格式,它里面打包的内容必定是一个可以使用的具体软件。
RPM本质上就是一个包,包含可以立即在特定机器体系结构上安装和运行的Linux软件。在红帽LINUX、SUSE、Fedora可以直接进行安装,但在Ubuntu中却无法识别。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。

RPM包与源码包的区别

1、软件包分类
源码包:C源代码包
rpm包:编译之后的二进制包
2、源码包
优点:开源;可以自由选择所需功能;可看源代码;卸载方便(直接删除安装位置);
缺点:安装步骤过多;编译时间过长;
3、RPM包
优点:使用简单,只需要几个命令就可以实现包的安装、升级、查询、卸载;安装速度快;
缺点:不能看源代码;功能选择不如源代码灵活;依赖性;

RPM包命名和依赖性
RPM包的命名规则

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

RPM包的依赖性

树形依赖性:a -> b -> c,即a依赖b,b依赖c
环形依赖:a -> b -> c -> a

rpm基本功能
1、rpm命令用于管理程序包:
主要 作用:安装、升级、卸载、查询、校验、数据库维护
2、rpm具体使用方法

(1)语法:rpm[OPTIONS] [PACKAGE_FILE] 即 rpm 【选项】【包文件】
(2)相关选项参数命令

安装:-i,--install
升级:-U,--update,-F
卸载:-e.--erase
查询:-q  --query
校验:-V,--verify
数据库维护:--builddb,--initdb

3、各选项参数详解

(1)安装:rpm {-i|--install} [install-options] PACKAGE_FILE ..
 rpm -ivh PACKAGE_FILE ..(rpm包常规安装命令)
GENEARL OPTIONS:综合选项
 -i:安装
-v: 详细信息
-vv:更加详细的信息
-h:hash marks 输出进度条:50个#表示进度条
--prefix   :安装指定目录
--test:测试安装,检查并报告安装是否完成  --> rpm -ivh --test PACKAGE_FILE ..  
--nodeps:忽略依赖关系,不建议操作  --> rpm -ivh --nodepst  PACKAGE_FILE 
--replacepkgs:重新安装rpm包  --> rpm -ivh --replacepkgs     PACKAGE_FILE 
--nosignature:不检查签名信息,不检查来源合法性
--nodigest:不检查包完整信息:

举列:

 [root@localhost leiyuncai]# rpm -ivh zsh- 5.0.2-14.el7.x86_64.rpm 
  注意:忽略  --nodeps 依赖关系强制安装可能会导致所安装包不能够正常工作

(2)升级

rpm {-U|--upgrade} [install-options] PACKAGE_FILE ..
rpm {-F|--freshen} [install-options] PACKAGE_FILE ..
-U:  升级或者安装
-F:单纯的升级,如果之前没有rpm包将无法升级
--test:测试安装,检查并报告完成  --> rpm -Uvh --test     PACKAGE_FILE ..       
--nodeps:忽略依赖关系,不建议操作  --> rpm -Uvh --nodepst PACKAGE_FILE 
--replacepkgs:重新安装rpm包  --> rpm -ivh --Ueplacepkgs PACKAGE_FILE 
--oldpackage::降级操作
--force:强制升级
举列:[root@localhost leiyuncai]# rpm -Uvh zsh-5.0.2-14.el7.x86_64.rpm
注意:(1)不要对内核做升级操作,Liunx支持多内核并存,直接安装新版本
           (2) 如果源程序包的配置文件安装后曾修改过,升级时,新版本的程序提供的同一配置文件不会覆盖原有版本文件,而重命名为(FILENAME,rpmnew)

(3)卸载:

rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts]   [--test] PACKAGE_NAME ...
rpm -e 软件包名称
 -e:卸载指定程序
-allmatches:卸载所有匹配指定名称的程序包的各个版本
--nodeps:忽略依赖关系
--test:测试卸载,显示依赖关系    
举列:
[root@localhost ~]# rpm -e zsh 

(4) 查询

rpm {-q|--query} [select-options] [query-options]
select-options:给指定值,一般是需要查询文件名称
-a.all:查询所有已经安装过的包,后面一般通过管道输出至正则表达式匹配-列如: rpm -qa | grep "^z"
 -f FILE:查看指定的文件由哪个程序包安装生产:
-p, --package PACKAGE_FILE:对于未安装的程序包执行查询操作
--whatprovides CAPABILITY:查询指定的CAPABILITY由哪个程序包提供
--whatrequlres CAPABILITY:查询指定的-CAPABILITY被哪个程序包依赖
[query-options]
--changelog:查询rpm包的changelog; 历史
-l --list:列出程序包安装生产的文件列表
-i,--info:查询程序包相关的信息,包含版本、信息、时间等等
-c,:查询程序包有哪些指定的配置文件
-d:查询指定的程序包提供的文档信息
--provides:列出指定程程序包的 CAPABILITY
-R,--regulres:查询程序包依赖的包
--scripts:查看程序包自带的脚本片断

举列:

1.[root@localhost Packages]# rpm -qa 
        #:查询所有安装的包
2.[root@localhost Packages]# rpm -qpi httpd-devel
         #:查询未安装包的详细信息
3.[root@localhost Packages]# rpm -qi httpd-devel 
        #:查看程序包的相关信息
4.[root@localhost Packages]# rpm -ql httpd-devel 
        #:查看程序包安装产生的文件列表
5.[root@localhost Packages]# rpm -qc zsh
        #:查看程序包的配置文件
6.[root@localhost Packages]# rpm -qd zsh    
        #:查看程序包提供的文档信息
7.[root@localhost Packages]# rpm -qR zsh
      # :查询程序包依赖的包

查看yum安装包信息(以java为例)
rpm -qa|grep java
显示以下信息

java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64
...

查看java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64 包安装位置
rpm -ql java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64

感谢https://blog.51cto.com/8950428/2103427

相关文章

  • rpm命令笔记

    RPM全称是Red Hat Package Manager(Red Hat包管理器),是由红帽公司最先发布的一种用...

  • 第五周(rpm和yum等相关内容)

    1.简述rpm与yum命令的常见选项,并举例 rpm的相关命令和选项 rpm命令: rpm [OPTIONS] [...

  • Linux—基础指令

    常用指令: RPM 安装操作命令: RPM 查询操作命令: RPM 卸载操作命令: Linux中rz和sz命令用法...

  • Linux学习博客5

    简述rpm与yum命令的常见选项,并举例 rpm命令 rpm命令用来手动安装rpm格式的程序包,使用格式为 rpm...

  • rpm常用命令

    1.rpm命令1.CentOS系统上rpm命令管理程序包:安装、升级、卸载、查询和校验 2.rpm命令:rpm [...

  • linux软件管理,定时任务及sed命令示例

    简述rpm与yum命令的常见选项,并举例 rpm命令:rpm [OPTIONS] [PACKAGE_FILE]...

  • Chapter 5——Linux程序包管理和sed命令

    1、简述rpm与yum命令的常见选项,并举例 rpm命令 安装: rpm {-i|--install} [inst...

  • rpm和yum的详细使用以及at,crond计时

    一、简述rpm和yum命令的常用选项并举例说明 rpm命令:rpm [OPTIONS] [PACKAGE_FILE...

  • 2018-09-16

    1、简述rpm与yum命令的常见选项,并举例 rpm命令 rpm -i 安装某个程序包 rpm -v 显示过程 r...

  • Linux命令(1)

    这篇文章是关于RHEL7的rpm和yum命令的使用参数。 1、常用的RPM命令 安装软件的命令格式:rpm -iv...

网友评论

      本文标题:rpm命令笔记

      本文链接:https://www.haomeiwen.com/subject/pmilyhtx.html