Linux(centos)中rpm命令的运用

    rpm是由red had 公司开发的程序包管理器,可以用来安装、卸载、升级和管理软件,其功能强大,又有相对来说很好的易用性,所以已经成为liunx系统中运用最为广泛的软件包管理器。

       其主要用法如下:

    

      rpm {-i|--install} [install-options] PACKAGE_FILE1...


-h: hash,以#来表示安装进度;

-v, --verbose:显示安装过程中的详细信息;

-vv: 


安装时常用的组合: -ivh, -ivvh


--test:不执行真正的安装过程,而仅报告依赖关系及冲突信息等;


忽略依赖关系

                         --nodeps


覆盖安装:重新安装并覆盖原有的文件

--replacepkgs


强制安装:

--force


升级:


rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...

-U: 升级或安装


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

-F:升级


组合:-Uvh, -Fvh


--test

--nodeps

--force

--oldpackage:降级到旧版本

卸载:


移除已经安装的程序包


rpm {-e|--erase} [--allmatches] [--nodeps] [--test] PACKAGE_NAME ...


简单用法:rpm -e PACKAGE_NAME...


--nodeps:忽略依赖关系;

--test: 测试卸载;dry-run模式;

--allmatches: 如果一个程序包同时安装多个版本,则此选项一次全部卸载

查询:

查询某包是否已经安装,以及检查安装的所有包;还可以查看某包的详细信息;


rpm {-q|--query} [select-options] [query-options]


[select-options]:

1、查询某包或某些包是否安装:

rpm -q PACKAGE_NAME...


2、查询已经安装的所有包:

rpm -qa


3、查询某文件是由哪个包安装生成:

rpm -qf /PATH/TO/SOMEFILE


4、查询尚未安装的包文件的相关信息

-p

# rpm -qpi PACKAGE_FILE


1、查询某包的简要说明信息:

rpm -qi PACKAGE_NAME


2、查询某包安装生成的文件列表:

rpm -ql PACKAGE_NAME


3、查询某包安装完成后生成的所有配置文件:

rpm -qc PACKAGE_NAME


4、查询某包安装完成后生成的所有帮助文件:

rpm -qd PACKAGE_NAME


5、查看某包制作时随版本变化的changelog信息:

rpm -q --changelog PACKAGE_NAME


6、查询某包提供的capabilities:

rpm -q --provides PACKAGE_NAME


7、查询某包所依赖的capabilities:

rpm -q --requires PACKAGE_NAME


8、查询某包安装或卸载时执行脚本:

rpm -q --scripts PACKAGE_NAME


脚本有四类:

preinstall: 安装过程开始之前执行的脚本;

postinstall: 安装过程完成之后执行的脚本;

preuninstall: 卸载开始之前执行的脚本 ;

postuninstall: 卸载过程完成之后执行的脚本;


校验:

查询包安装之后生成的文件是否发生了改变


rpm {-V|--verify} [select-options] [verify-options]


常见用法:rpm -V PACKAGE_NAME


      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} [-v] [--dbpath DIRECTORY]


--initdb: 初始化数据库,即数据库完全不存时,可新建之;


--rebuilddb: 无论当前数据存在与否,都会直接重建此库;



你可能感兴趣的:(linux,开发,程序,软件包,管理软件)