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. 创建数据表,自定义data element, field等。

    参考:https://wenku.baidu.com/view/253ddbfaa5e9856a561260da.html 一:创建域. 使用T-CODE 11 搜索 数据操作系统. 选择domain ...

  2. 多线程——继承Thread类实现一个多线程

    继承Thread类实现一个多线程 Thread类部分源码: package java.lang; //该类实现了Runnable接口 public class Thread implements Ru ...

  3. linux下automake用法

    linux下automake用法 2017年02月06日 09:21:14 阅读数:3684 标签: makemakefilegnulinux   作为Linux下的程序开发人员,大家一定都遇到过Ma ...

  4. CentOS安装pycharm

    1.官网下载包 2.Linux下解压 3.进入bin目录 4.赋权:chmod +x pycharm.sh 5.安装:./pycharm.sh 6.添加链接:ln -s /home/pycharm/p ...

  5. 【LeetCode每天一题】Remove Nth Node From End of List(移除链表倒数第N个节点)

    Given a linked list, remove the n-th node from the end of list and return its head. Example:        ...

  6. 《全栈性能Jmeter》-7JMeter常用脚本开发

  7. [LeetCode] 20. Valid Parentheses_Easy tag: Stack

    Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the inpu ...

  8. php 实现php代码的加密解密

    php 代码加密类,大家可以根据自己的需求进行修改,原类如下,是对之前的加密解密类的有一次修改,希望能分享给大家.本次在ubuntu下测试没有问题,与之前的版本的区别在于,这次的版本更加的通用性. & ...

  9. CentOS6.5安装RHive

    1.安装RServe软件包(各个节点都要安装) [root@Hadoop-NN-01 mysofts] # R CMD INSTALL Rserve_1.7-2.tar.gz 2.设置环境变量 [ro ...

  10. Kotlin 范型约束

    官方的示意及其简约,该说的一概没说 我在这里给大家一个完整的例子 //test.kt fun <T> cloneWhenGreater(list: List<T>, thres ...