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)
上一篇 2016-08-24 10:12
下一篇 2016-08-24 10:13

相关推荐

  • DNS服务器搭建

    1. 配置正向解析 1.安装bind yum install bind bind-utils -y 2.配置/etc/named.conf,需要修改的地方 listen-on port 53 { 127.0.0.1; 192.168.42.135; }; allow-query { any; }; dnssec-enable no; dnssec-valid…

    Linux干货 2017-05-24
  • 文件系统的挂载使用总结

    文件系统使用 除根文件系统以外的文件系统创建后要使用需要先挂载至挂载点后才可以被访问,挂载点即分区设备文件关联的某个目录文件,挂载命令mount和 卸载命令umount; 挂载点: mount_point,作为被挂载的文件系统的访问入口; 作为挂载点需要满足三个条件:  (1)这个目录事先存在  (2)使用未被或不会被其他进程使用到的目录…

    系统运维 2016-11-19
  • linux发展史

    linux发展史简介: 20世纪60年代,MIT开发分时操作系统(Compatible TIme-Sharing System),支持30台终端访问主机;     ~主机负责运算,而终端负责输入输出; 1965年,Bell实验室、MIT、GE(通用电气公司)准备开发Multics系统,为了同时支持3…

    Linux干货 2016-10-14
  • 关于文件系统备份、交换分区挂载等–中

    dd命令:convert and copy a file 用法: dd if=/PATH/FROM/SRC of=/PATH/TO/DEST  bs=#:block size, 复制单元大小 count=#:复制多少个bs  of=file 写到所命名的文件而不是到标准…

    Linux干货 2016-08-29
  • LVM2 逻辑卷管理工具

    LVM2:  LVM: Logical Volume Manager, Version: 2  dm: device mapper,将一个或多个底层块设备组织成一个逻辑设备的模块; /dev/dm-#  /dev/mapper/VG_NAME-LV_NAME /dev/mapper/vol0-root /dev/VG_NAME/…

    Linux干货 2015-09-19
  • 基础命令。

    简单基础小命令 查看目录 ls 查看当前路径下的目录 ls -a 查看当前路径下的所有目录,包含隐藏目录(带.的就是隐藏) ls -A 跟-a一样,只是不显示上一路径和本身路径(就是.和..) ls -l 显示额外的信息 ls -R 进入每个文件夹查看(递归) ls -ld 查看元数据 ls -1(数字) 排列 ls -r 倒序 ls -t 按修改时间排序 …

    Linux干货 2017-05-29