linux中rpm命令的妙用

linux中rpm命令的妙用

CentOS系统上使用rpm命令管理程序包: 安装、卸载、升级、查询、校验、数据库维护

安装:

        rpm {-i|–install} [install-options] PACKAGE_FILE…

                -v: verbose

                -vv:

                -h: 以#显示程序包管理执行进度 rpm -ivh PACKAGE_FILE …

                –test: 测试安装,但不真正执行安装;dry run模式

                –nodeps:忽略依赖关系 –replacepkgs | replacefiles

                –nosignature: 不检查来源合法性

                –nodigest:不检查包完整性

                –noscipts:不执行程序包脚本片断

                              %pre: 安装前脚本;–nopre

                              %post: 安装后脚本;–nopost

                              %preun: 卸载前脚本;–nopreun

                              %postun: 卸载后脚本; –nopostun

rpm包升级
 升级: rpm {-U|–upgrade} [install-options] PACKAGE_FILE… 

                    rpm {-F|–freshen} [install-options] PACKAGE_FILE…

                           upgrade:安装有旧版程序包,则“升级” 如果不存在旧版程序包,则“安装”

                           freshen:安装有旧版程序包,则“升级” 如果不存在旧版程序包,则不执行升级操作

                           rpm -Uvh PACKAGE_FILE …

                           rpm -Fvh PACKAGE_FILE …

                           –oldpackage:降级

                           –force: 强行升级

包查询
    rpm {-q|–query} [select-options] [query-options] [select-options]

        -a: 所有包

        -f: 查看指定的文件由哪个程序包安装生成

        -p rpmfile:针对尚未安装的程序包文件做查询操作;

        –whatprovides CAPABILITY:查询指定的CAPABILITY 由哪个包所提供

        –whatrequires CAPABILITY:查询指定的CAPABILITY被 哪个包所依赖 

             rpm2cpio 包文件|cpio –itv 预览包内文件 

             rpm2cpio 包文件|cpio –id  “*.conf” 释放包内文件

        –changelog:查询rpm包的changelog

        -c: 查询程序的配置文件

        -d: 查询程序的文档

        -i: information

        -l: 查看指定的程序包安装后生成的所有文件;

        –scripts:程序包自带的脚本片断

        -R: 查询指定的程序包所依赖的CAPABILITY;

        –provides: 列出指定程序包所提供的CAPABILITY

 查询用法:

         -qi PACKAGE, -qf FILE, -qc PACKAGE, -ql PACKAGE, -qd PACKAGE

         -qpi PACKAGE_FILE, -qpl PACKAGE_FILE, …

         -qa

卸载:

         rpm {-e|–erase} [–allmatches] [–nodeps] [-noscripts] [–notriggers] [–test] PACKAGE_NAME …

包校验
     rpm {-V|–verify} [select-options] [verify-options]

        S file Size differs

        M Mode differs (includes permissions and file type)

        5 digest (formerly MD5 sum) differs

        D Device major/minor number mismatch

        L readLink(2) path mismatch

        U User ownership differs

        G Group ownership differs

        T mTime differs

        P capabilities differ

rpm数据库
     数据库重建:

                 /var/lib/rpm 

        rpm {–initdb|–rebuilddb}

        initdb: 初始化

        如果事先不存在数据库,则新建之

        否则,不执行任何操作

        rebuilddb:重建

        无论当前存在与否,直接重新创建数据库


参数说明

  • -a  查询所有套件。

  • -b<完成阶段><套件档>+或-t <完成阶段><套件档>+  设置包装套件的完成阶段,并指定套件档的文件名称。

  • -c  只列出组态配置文件,本参数需配合"-l"参数使用。

  • -d  只列出文本文件,本参数需配合"-l"参数使用。

  • -e<套件档>或–erase<套件档>  删除指定的套件。

  • -f<文件>+  查询拥有指定文件的套件。

  • -h或–hash  套件安装时列出标记。

  • -i  显示套件的相关信息。

  • -i<套件档>或–install<套件档>  安装指定的套件档。

  • -l  显示套件的文件列表。

  • -p<套件档>+  查询指定的RPM套件档。

  • -q  使用询问模式,当遇到任何问题时,rpm指令会先询问用户。

  • -R  显示套件的关联性信息。

  • -s  显示文件状态,本参数需配合"-l"参数使用。

  • -U<套件档>或–upgrade<套件档> 升级指定的套件档。

  • -v  显示指令执行过程。

  • -vv  详细显示指令执行过程,便于排错。

  • -addsign<套件档>+  在指定的套件里加上新的签名认证。

  • –allfiles  安装所有文件。

  • –allmatches  删除符合指定的套件所包含的文件。

  • –badreloc  发生错误时,重新配置文件。

  • –buildroot<根目录>  设置产生套件时,欲当作根目录的目录。

  • –changelog  显示套件的更改记录。

  • –checksig<套件档>+  检验该套件的签名认证。

  • –clean  完成套件的包装后,删除包装过程中所建立的目录。

  • –dbpath<数据库目录>  设置欲存放RPM数据库的目录。

  • –dump  显示每个文件的验证信息。本参数需配合"-l"参数使用。

  • –excludedocs  安装套件时,不要安装文件。

  • –excludepath<排除目录>  忽略在指定目录里的所有文件。

  • –force  强行置换套件或文件。

  • –ftpproxy<主机名称或IP地址>  指定FTP代理服务器。

  • –ftpport<通信端口>  设置FTP服务器或代理服务器使用的通信端口。

  • –help  在线帮助。

  • –httpproxy<主机名称或IP地址>  指定HTTP代理服务器。

  • –httpport<通信端口>  设置HTTP服务器或代理服务器使用的通信端口。

  • –ignorearch  不验证套件档的结构正确性。

  • –ignoreos  不验证套件档的结构正确性。

  • –ignoresize  安装前不检查磁盘空间是否足够。

  • –includedocs  安装套件时,一并安装文件。

  • –initdb  确认有正确的数据库可以使用。

  • –justdb  更新数据库,当不变动任何文件。

  • –nobulid  不执行任何完成阶段。

  • –nodeps  不验证套件档的相互关联性。

  • –nofiles  不验证文件的属性。

  • –nogpg  略过所有GPG的签名认证。

  • –nomd5  不使用MD5编码演算确认文件的大小与正确性。

  • –nopgp  略过所有PGP的签名认证。

  • –noorder  不重新编排套件的安装顺序,以便满足其彼此间的关联性。

  • –noscripts  不执行任何安装Script文件。

  • –notriggers  不执行该套件包装内的任何Script文件。

  • –oldpackage  升级成旧版本的套件。

  • –percent  安装套件时显示完成度百分比。

  • –pipe<执行指令>  建立管道,把输出结果转为该执行指令的输入数据。

  • –prefix<目的目录>  若重新配置文件,就把文件放到指定的目录下。

  • –provides  查询该套件所提供的兼容度。

  • –queryformat<档头格式>  设置档头的表示方式。

  • –querytags  列出可用于档头格式的标签。

  • –rcfile<配置文件>  使用指定的配置文件。

  • –rebulid<套件档>  安装原始代码套件,重新产生二进制文件的套件。

  • –rebuliddb  以现有的数据库为主,重建一份数据库。

  • –recompile<套件档>  此参数的效果和指定"–rebulid"参数类似,当不产生套件档。

  • –relocate<原目录>=<新目录>  把本来会放到原目录下的文件改放到新目录。

  • –replacefiles  强行置换文件。

  • –replacepkgs  强行置换套件。

  • –requires  查询该套件所需要的兼容度。

  • –resing<套件档>+  删除现有认证,重新产生签名认证。

  • –rmsource  完成套件的包装后,删除原始代码。

  • –rmsource<文件>  删除原始代码和指定的文件。

  • –root<根目录>  设置欲当作根目录的目录。

  • –scripts  列出安装套件的Script的变量。

  • –setperms  设置文件的权限。

  • –setugids  设置文件的拥有者和所属群组。

  • –short-circuit  直接略过指定完成阶段的步骤。

  • –sign  产生PGP或GPG的签名认证。

  • –target=<安装平台>+  设置产生的套件的安装平台。

  • –test  仅作测试,并不真的安装套件。

  • –timecheck<检查秒数>  设置检查时间的计时秒数。

  • –triggeredby<套件档>  查询该套件的包装者。

  • –triggers  展示套件档内的包装Script。

  • –verify  此参数的效果和指定"-q"参数相同。

  • –version  显示版本信息。

  • –whatprovides<功能特性>  查询该套件对指定的功能特性所提供的兼容度。

  • –whatrequires<功能特性>  查询该套件对指定的功能特性所需要的兼容度。


原创文章,作者:xiaoqiang512,如若转载,请注明出处:http://www.178linux.com/39240

(0)
xiaoqiang512xiaoqiang512
上一篇 2016-08-24 10:12
下一篇 2016-08-24 10:12

相关推荐

  • Linux进程管理命令和性能监控工具的应用

    概述 监控系统的各方面的性能,保障各类服务的有序运行,是运维工作的重要组成部分,本篇就介绍了一些常用的系统监控命令和相关参数的说明 具体包含一下几个部分 1.进程管理基础 2.进程管理工具(ps,top,htop,kill) 3.内存监控类工具(vmstat,pmap) 4.系统监控累工具(glances,dstat)…

    Linux干货 2016-09-26
  • Linus Torvalds 语录 Top 10

    下面是Linux的创始人Linus Torvalds的一些言论,这是我个人认为最有意思的10句。如果你想看更多的Linus Torvalds说过的话,你可以看看他在维基百科上的词条:Linux Torvalds。我们在下面给出中英文对照,希望你能喜欢。 “Really, I’m not out to dest…

    Linux干货 2015-04-03
  • Linux文本处理工具及组管理

    1、列出当前系统上所有已经登录的用户名,注意:同一个用户登录多次,只显示一次即可 [root@centos ~]# who | cut -d' ' -f1 | sort -u     gentoo &…

    Linux干货 2016-10-09
  • 译文-Symbolic一个基于func集中式管理平台[原创]

    Symbolic是一个开源的企业平台,旨在建立、配置和管理您的庞大分布式数据中心为目的开源框架,代表了目前最先进的数据中心解决方案的集中管理平台。 特征 属于RedHat认证协议栈的应用 具于func后端应用 支持 RHEL、Centos及Fedora 先进的拖放标签管理(Ajax) 提供Cobbler支持 灵活管理操作用户、主机 组和权限管理标记 先进的基…

    Linux干货 2015-03-27
  • centos启动流程

    加电自检 检测硬件是否存在并且能够正常运行,如cpu、内存、硬盘是否存在并能正常运行,以及外围得输入输出设备是否存在,如键盘、鼠标、显示器。 bios启动次序,按照次序查找个引导设备,启动第一个具有引导程序的设备,即为本次启动需要加载的设备。 加载boot loader bootloader安装在mbr中,linux的bootloader程序为grub和li…

    Linux干货 2017-11-14
  • 文件归档,shell循环和函数运用

    文件归档 tar (1)  创建归档 tar -c -f / PATH/TO/SOMEFILE .tar FILE… tar cf / PATH/TO/SOMEFILE .tar FILE… (2)  查看归档文件中的文件列表 tar -t -f  /PATH/TO/SOMEFILE .tar (3) &…

    Linux干货 2016-08-21