linux之rpm详解
rpm常见参数
用法: rpm [选项...] -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:详细显示指令执行过程,便于排错
一、简介
RPM是RedhatPackageManager的缩写,是由RedHat公司开发的软件包安装和管理程序,同Windows平台上的Uninstaller比较类似。使用RPM,用户可以自行安装和管理Linux上的应用程序和系统工具。RPM可以让用户直接以binary方式安装软件包,并且可替用户查询是否已经安装了有关的库文件;在用RPM删除程序时,它又会聪明地询问用户是否要删除有关的程序。如果使用RPM来升级软件,RPM会保留原先的配置文件,这样用户就不用重新配置新的软件了。RPM保留一个数据库,这个数据库中包含了所有的软件包的资料,通过这个数据库,用户可以进行软件包的查询。RPM虽然是为Linux而设计的,但是它已经移值到SunOS、Solaris、AIX、Irix等其它UNIX系统上了。RPM遵循GPL版权协议,用户可以在符合GPL协议的条件下自由使用及传播RPM。
二、配置
RPM包管理的配置文件是rpmrc,可以使用如下命令进行查找
# locate rpmrc
可以通过如下命令进行查看
rpm --showrc
三、功能
1、初始化rpm 数据库功能;
通过rpm 命令查询一个rpm 包是否安装了,也是要通过rpm
数据库来完成的;所以我们要经常用下面的两个命令来初始化rpm 数据库;
[root@localhost beinan]# rpm --initdb [root@localhost beinan]# rpm --rebuilddb 注:这个要花好长时间;
注:以上两个参数是极为有用,有时rpm 系统出了问题,不能安装和查询,大多是这里出了问题;
2、RPM软件包管理功能
1)查询功能:
rpm {-q|--query} [select-options] [query-options]
使用实例
1)查询一个已经安装的文件属于哪个软件包
rpm -qf 文件名
2)查询已安装软件包都安装到何处
rpm -ql 软件名 或 rpm rpmquery -ql 软件名
3)查看一下已安装软件的配置文件
rpm -qc 软件名
4)查看一个已经安装软件的文档安装位置
rpm -qd 软件名
5)查看一下已安装软件所依赖的软件包及文件
rpm -qR 软件名
6)查看一件软件包所包含的文件
rpm -qpl 文件名
2)软件包的安装、升级、删除
1)常规包安装
-ivh:安装显示安装进度--install--verbose--hash -Uvh:升级软件包--Update; -Va:校验所有的RPM软件包,查找丢失的文件[View Lost]; -e:删除包
2)源码包安装
rpm --recompile vim-4.6-4.src.rpm #这个命令会把源代码解包并编译、安装它,如果用户使用命令: rpm --rebuild vim-4.6-4.src.rpm #在安装完成后,还会把编译生成的可执行文件重新包装成i386.rpm的RPM软件包。
详细用法请参考:http://ftp.tsingpost.com/index.php/archives/379/
3)网络包安装
# rpm -qpi http://mirrors.kernel.org/fedora/core/4/i386/os/ Fedora/RPMS/gaim-1.3.0-1.fc4.i386.rpm # rpm -ivh http://mirrors.kernel.org/fedora/core/4/i386/os/ Fedora/RPMS/gaim-1.3.0-1.fc4.i386.rpm
4)指定安装目录:要加 -relocate 参数
rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm #gaim-1.3.0-1.fc4.i386.rpm指定安装在目录: /opt/gaim 中
3、导入签名功能
rpm --import 签名文件
4、rpm软件包抽取文件功能
rpm2cpio file.rpm |cpio -div