linux运维常用的RPM管理工具笔记

举报
Jack20 发表于 2021/06/19 19:52:51 2021/06/19
【摘要】 常见的软件包封装类型封装类型说明rpm软件包  扩展名为“.rpm” deb软件包 扩展名为“.deb” 源代码软件包 一般为“.tar.gz”、“.tar.bz2”等格式的压缩包包含程序的原始代码附带安装程序的软件包  在压缩包内提供install.sh、setup等安装程序或以“.bin”格式的单个执行文件提供绿色免安装的软件包 在压缩包内提供已编译好的执行程序文件解开压缩包后的文件即可...
常见的软件包封装类型

封装类型

说明

rpm软件包 

扩展名为“.rpm”

deb软件包

扩展名为“.deb”

源代码软件包

一般为“.tar.gz”、“.tar.bz2”等格式的压缩包

包含程序的原始代码

附带安装程序的软件包 

在压缩包内提供install.shsetup等安装程序

或以“.bin”格式的单个执行文件提供

绿色免安装的软件包

在压缩包内提供已编译好的执行程序文件

解开压缩包后的文件即可直接使用

RPM概述

RPM( Redhat Package Manager)

Red Hat 公司提出,被众多 Linux 发行版所采用
建立统一的数据库文件,详细记录软件包安装、卸载等变化信息,能够自动分析软件包依赖关系
是openEuler、Redhat、CentOS、Fedora等Linux操作系统中的软件包管理器。


RPM所涉命令集:

  1. rpm:用来手动安装、卸载、查询、升级rpm包
  2. rpmbuild:用来把源码编译成RPM包
  3. rpmdevtool:用来创建rpmbuild目录、SPEC文件等

RPM具备以下优点:

  1. 内含编译程序,免编译。
  2. 预先检查系统版本,可避免文件被错误安装。
  3. 提供软件版本资讯,软件名称软件用途等相关信息,便于了解软件。
  4. 使用数据库记录RPM文件的相关参数,便于升级、移除、查询与验证。


rpm命令集简介

命令格式

  •  rpm [OPTION...]

部分参数说明

  1.  -ivh            //安装并显示安装进度和详细信息
  2.  -qa            //列出已安装在本机上的应用
  3.  -va            //列出本机上可能被修改过的应用
  4.  -e              //卸载应用
  5. -Uvh          //升级软件包--Update;
  6. -qpl          //列出RPM软件包内的文件信息[Query Package list]
  7. -qpi          //列出RPM软件包的描述信息[Query Package install package(s)]
  8. -qpc          //查看.rpm安装包内包含的配置文件列表
  9. -qpd        //查看.rpm安装包内包含的文档文件列表
  10. -qf           //查找指定文件属于哪个RPM软件包[Query File]
  11. -ql           //查询指定软件包所安装的目录、文件列表
  12. -qd          //仅显示指定软件包安装的文档文件
  13. -qc          //仅显示指定软件包安装的配置文件

安装或升级RPM软件

格式:rpm  [选项]  RPM包文件...

用法:不同选项适用于不同情况

• -i:安装一个新的rpm软件包

• -U:升级某个rpm软件,若原本未装,则进行安装

• -F:更新某个rpm软件,若原本未装,则放弃安装

注:rpmbulid构建必须选择下列"模式"之一:

(1)从spec构建,(2)从Tar构建,(3)重新构建,(4)重新编译,(5)显示配置

rpmbuild部分参数命令介绍

命令格式

  •  rpmbuild [OPTION...]

部分参数说明
 -bp          //只作准备(解压与打补丁)
 -bc           //准备并编译
 -bi           //编译并安装
 -bl           //检验文件是否齐全
 -ba         //编译后生成*.rpm和src.rpm
 -bb        //编译后生成*.rpm
 -bs        //只生成*.src.rpm

rpmbuild目录介绍

rpmbuild目录是可以由命令rpmdev-setuptree自动生成

Rpmbuild目录的具体路径及用途如下:

  • RPM可以让用户直接以binary方式安装软件包,并且可替用户查询是否已经安装了有关的库文件;在用RPM删除程序时,它又会聪明地询问用户是否要删除有关的程序.
  • 如果想发布RPM格式的源码包或者是二进制包,就要使用rpmbulid工具(RPM最新打包工具)
  • RPM 与rmpbulid之间的关系是RPM工具负责安装由rpmbulid编译生成的二进制文件RPM包。

重点:

  1. 什么是spec(配置规范文件)? RPM编译过程的核心是处理.spec文件
  2. 它说明了软件包怎样被配置,补缀哪些补丁,安装哪些文件,被安装到哪里,在安装该包之前或之后需要运行那些系统级别的活动。
  3. 它必须手写,但更简单的办法是拿来他人写好的,在此基础上修改。
  4. RPM自身对于你能在spec文件中做什么没有太多限制,所以你可以弄的很复杂。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。