rpm命令

rpm是一款强大的Redhat软件包管理工具,可创建、安装、查询、验证、升级和卸载每个软件包,软件包是存储文件,包括需要安装的文件和名称、版本、说明等报信息。

rpm默认支持7种操作模式,每个模式具有不同选项,分别为安装、查询、验证。签名确认、卸载、制作和重建数据库。本人在rpm命令的应用中,主要涉及了其安装、查询与卸载功能,所以本节只是介绍rpm的安装、查询与卸载功能。

安装模式:rpm -i [安装选项] <包文件>

查询模式:rpm -q [查询选项]

    卸载模式:rpm -e <包名>

验证模式:rpm -V|-y|--verify [验证选项]

签名确认模式:rpm --checksig <包文件>+

制作模式:rpm -b0 [制作选项] <包规格>+

常规选项:

以下选项可在不同模式中使用。

-vv 显示详细的调试信息

--keep-temps 不删除临时文件(/tmp/rpm-*),主要只用于调试rpm时

--quiet 限制显示内容,只显示错误消息

--help 显示较长使用方法的说明书

--version 将正在使用的rpm版本显示为1行

--root <dir> 将顶级目录设为所有操作的默认目录并运行。如安装时默认目录为“/”,并以此为标准进行安装

安装选项(用于软件安装模式)

--force 等于同时使用--replacepkgs、--replacefiles、--oldpackage,表示强制覆盖安装

--oldpackage 删除新软件包并用之前的软件包代替

--replacefiles 即使会覆盖已安装的其他包文件,也强制安装软件包

--replacepkgs 即使已安装软件包也重新安装

-h,--hash 解包时标注hashmark (#),共50个,与-v选项一起使用显示效果更佳

--noscripts 不执行preinstall、postinstall版本

--excludedocs 不安装标注为文本的文件(帮助页面和texinfo文本)

--includedocs 包括文本文件。只有rpmrc文件中标注excludedocs:1时才能使用该选项

--nodeps 安装软件包前不检查依赖性

--test 实际不安装软件包,检查是否发生冲突并报告

-U、--upgrade 将当前安装的软件包升级为新版本的RPM。

软件安装,常用的组合指令为rpm -ivh <包名>:安装软件包并显示安装进度

                                          rpm -Uvh <包名>:升级软件包

查询选项(用于软件查询模式):

rpm -q [查询选项]

查询选项有两套:软件包选择和信息选择。

软件包选择选项:<软件包名> 查询<package_name>软件包

-a: 对所有软件包进行查询

-f <文件>: 查询包括<文件>的软件包

-p <包文件>: 查询已安装或未安装的<包文件>

信息选择选项:

-i:显示软件包名、版本、说明等信息

-R:显示当前包依赖的包目录

--provides:显示软件包提供的功能

-l:显示软件包内的文件

-s:显示软件包内文件的状态

-d:仅显示文本文件(包括-l)

-c:仅显示设置文件(包括-l)

常用组合指令 -qpl:列出RPM软件包内的文件信息[Query Package list]
                   -qpi:列出RPM软件包的描述信息[Query Package install package(s)]
                   -qf:查找指定文件属于哪个RPM软件包[Query File]

卸载选项(用于软件卸载模式)

rpm -e <包文件>

--noscripts:不执行preuninstall、postuninstall脚本

--nodeps:卸载包时不检查依赖性

--test:实际不卸载包,只进行测试。-vv选项。

重制作、重编译选项

rpm --recompile <源包文件>+

rpm --rebuild <源包文件>+  :可用于创建新二进制包。

主要用于.src.rpm软件包的安装,如:

rpm --recompile vim-4.6-4.src.rpm   #这个命令会把源代码解包并编译、安装它,如果用户使用命令:

rpm --rebuild vim-4.6-4.src.rpm  #在安装完成后,还会把编译生成的可执行文件重新包装成i386.rpm的RPM软件包。

每日linux命令学习-rpm命令的更多相关文章

  1. Linux系统下RPM命令和yum的使用

    Linux系统下RPM命令和yum的使用 RPM:Redhat Packages Manager (红帽系列软件包的管理),主要用于安装.卸载.升级和管理软件. 一个包由下面几个部分构成: 例如:ht ...

  2. 每日linux命令学习-head命令和tail命令

    本节主要学习了linux文件浏览的相关命令,包括cat.less.more.read.tail等,由于本人经常使用cat.less.more命令,已经较为熟悉,所以本节重点学习head命令和tail命 ...

  3. Linux下面使用rpm命令

    RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序” rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种 ...

  4. Linux入门学习 常用命令

    cd命令 功能是切换到指定的目录:命令格式:cd [目录名]有几个符号作为目录名有特殊的含义:"/"代表根目录.".."代表上一级目录."~" ...

  5. linux常用命令:rpm 命令

    rpm是一个功能十分强大的软件包管理系统. 1.命令格式: rpm  [参数]  [包名] 2.命令功能: 使得在Linux下安装.升级和删除软件包的工作变得容易,并且具有查询.验证软件包的功能.与图 ...

  6. linux软件管理 RPM命令

    RPM命名规则 httpd -2.2.15-15.el6.centos.1.i686.rpm (包全名) httpd 软件包名 (包名) 2.2.15 软件版本 15 软件发布的次数 el6.cent ...

  7. Linux命令学习-ps命令

    Linux中,ps命令的全称是process status,即进程状态的意思,主要作用是列出系统中当前正在运行的进程信息. ps命令的功能很强大,参数也非常多,下面只举几个简单的实例. 显示所有进程信 ...

  8. Linux命令学习-tail命令

    Linux中,tail命令的全称就是tail,主要用于监控日志文件. 对于一个正在运行应用来说,其对应的log日志文件肯定是在不断的更新,此时,便可通过tail命令来动态显示日志文件的内容.假设当前目 ...

  9. Linux命令学习-history命令

    Linux中,history命令的作用是显示历史记录和执行过的命令. 查看历史所有命令执行记录 history 查看最近的13条历史执行命令 history 13 执行历史记录中,序号为123的命令 ...

随机推荐

  1. visual tudio 2017--发布

  2. Java内部类详解(一)

    (转自:http://blog.csdn.net/wangpeng047/article/details/12344593) 很多人对于Java内部类(Inner Class)都十分陌生,甚至听都没听 ...

  3. Spark代码中设置appName在client模式和cluster模式中不一样问题

    问题 Spark应用名在使用yarn-cluster模式提交时不生效,在使用yarn-client模式提交时生效,如图1所示,第一个应用是使用yarn-client模式提交的,正确显示我们代码里设置的 ...

  4. python web框架介绍对比

    Django Python框架虽然说是百花齐放,但仍然有那么一家是最大的,它就是Django.要说Django是Python框架里最好的,有人同意也有人 坚决反对,但说Django的文档最完善.市场占 ...

  5. (转)Marathon健康检查

    健康检查是需要每个应用运行监控检查任务的. 1.默认的健康检查是延迟才能让mesos知道任务的状态是否健康. 2.marathon提供一个任务资源的健康成员访问的REST API接口. 如果HTTP的 ...

  6. [Java in NetBeans] Lesson 03. More Variables / Type Casting

    这个课程的参考视频在youtube. 主要学到的知识点有: It is different from python, that "1" only present string &q ...

  7. AC自动机模板1

    题目链接:https://www.luogu.org/problemnew/show/P3808 要注意的是一定要把len赋值strlen(s);不然超时超的自闭!!!!!!!!!!!!!!!!!!! ...

  8. OEMCC 13.2 集群版本安装部署

    之前测试部署过OEMCC 13.2单机,具体可参考之前随笔: OEMCC 13.2 安装部署 当时环境:两台主机,系统RHEL 6.5,分别部署OMS和OMR: OMS,也就是OEMCC的服务端 IP ...

  9. 34.js----JS 开发者必须知道的十个 ES6 新特性

    JS 开发者必须知道的十个 ES6 新特性 这是为忙碌的开发者准备的ES6中最棒的十个特性(无特定顺序): 默认参数 模版表达式 多行字符串 拆包表达式 改进的对象表达式 箭头函数 =&> ...

  10. C# mongodb $set或$addToSet批量更新很慢原因

    C# mongodb $set或$addToSet批量更新很慢原因的解决方法:关键字段要建立索引