rpm是由红帽公司开发的软件包管理方式,使用rpm我们可以方便的进行软件的安装、查询、卸载、升级等工作。但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时。

yum基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

简单点说: rpm 只能安装已经下载到本地机器上的rpm 包. yum能在线下载并安装rpm包。

rpm [选项] [rpm软件包]

1、初始化rpm 数据库(可以省略)

rpm --initdb
rpm --rebuilddb % 注:这个要花好长时间
%注:有时rpm 系统出了问题,不能安装和查询,大多是这里出了问题。

2、RPM软件包管理的查询功能:

rpm -q [select-options] [query-options]

RPM的查询功能是极为强大,是极为重要的功能之一;这里举几个常用的例子,更为详细的具体的,请参考 man rpm

1、对系统中已安装软件的查询

)查询系统已安装的软件

语法:rpm -q 软件名

例:rpm -q gaim
% -q就是 --query,此选项表示询问系统是不是安装了gaim软件包;
% 如果已安装会有信息输出;如果没有安装,会输出gaim 没有安装的信息; %查看系统中所有已经安装的包,要加 -a 参数
rpm -qa % 如果分页查看,再加一个管道 |和more命令
rpm -qa |more % 如果要查找某个软件包,可以用 grep 抽取出来
rpm -qa |grep mplayer
)查询一个已经安装的文件属于哪个软件包; 语法: rpm -qf 文件名 注:文件名所在的绝对路径要指出 例:rpm -qf /usr/lib/libacl.la
)查询已安装软件包都安装到何处; 语法:rpm -ql 软件包名 例:rpm -ql mplayer
)查询一个已安装软件包的信息 语法: rpm -qi 软件包名 例:rpm -qi mplayer
)查看一下已安装软件的配置文件; 语法格式:rpm -qc 软件名 例:rpm -qc mplayer
)查看一个已经安装软件的文档安装位置: 语法格式: rpm -qd 软件名 例:rpm -qd mplayer
)查看一下已安装软件所依赖的软件包及文件; 语法格式: rpm -qR 软件名 例:rpm -qR mplayer 注:可以把几个参数组合起来用,如 rpm -qil mplayer

2、对于未安装的软件包的查看 :查看的前提是当前目录下已存在一个.rpm文件。

)查看一个软件包的用途、版本等信息;

语法: rpm -qpi file.rpm

例:rpm -qpi mplayer-.0pre7try2-.i386.rpm
)查看一件软件包所包含的文件; 语法: rpm -qpl file.rpm 例:rpm -qpl mplayer-.0pre7try2-.i386.rpm
)查看软件包的文档所在的位置; 语法: rpm -qpd file.rpm 例:rpm -qpd mplayer-.0pre7try2-.i386.rpm
)查看一个软件包的配置文件; 语法: rpm -qpc file.rpm 例:rpm -qpc mplayer-.0pre7try2-.i386.rpm
)查看一个软件包的依赖关系 语法: rpm -qpR file.rpm 例:rpm -qpR mplayer-.0pre7try2-.i386.rpm

3、软件包的安装、升级、删除等; 安装和升级一个rpm 包

语法:
rpm -ivh file.rpm % 这个是用来安装一个新的rpm 包
rpm -Uvh file.rpm % 这是用来升级一个rpm 包 % 如果有依赖关系的,需解决依赖关系。
% 如果找不到依赖关系的包,可以用下面的命令强制安装: rpm -ivh --nodeps --force file.rpm
rpm -Uvh --nodeps --force file.rpm 例:
rpm -ivh --test mplayer-.0pre7try2-.i386.rpm
% --test表示测试,并不真正安装。 rpm -ivh --relocate /=/usr/local/mplayer mplayer-.0pre7try2-.i386.rpm
% 为软件包指定安装目录:要加 --relocate 参数
% 安装在指定目录中的程序如何调用呢?
% 通常可执行程序都放在安装目录下的bin或者sbin目录中。

4、删除一个rpm 包

首先查出需要删除的rpm包,然后用下面的命令来卸载:

rpm -e 软件包名 

例:rpm -e mplayer   % 卸载mplayer
% 如果有其它的rpm依赖于该rpm包,系统会出现警告。
% 如果一定要卸载,可以用选项 --nodeps 忽略依赖关系。但最好不要这么做。

转载:http://math.ecnu.edu.cn/~jypan/Teaching/Linux/command/rpm.htm

rpm的用法的更多相关文章

  1. RPM常见用法

    rpm常见的用法: 命令 说明 rpm -i <.rpm file name> 安装指定的 .rpm 文件 rpm -U <.rpm file name> 用指定的.rpm文件 ...

  2. 7.1 安装软件包的三种方法 7.2 rpm包介绍 7.3 rpm工具用法 7.4 yum工具用法 7.5 yum搭建本地仓库

    7.1 安装软件包的三种方法 7.2 rpm包介绍 7.3 rpm工具用法 7.4 yum工具用法 7.5 yum搭建本地仓库 三种方法 rpm工具----->类型windows下的exe程序 ...

  3. Rpm另类用法加固Linux安全

    Rpm另类用法加固Linux安全   RPM是Red Hat Package Manager的缩写即Red Hat软件管理器.它是一个开放的包管理软件,由Red Hat公司所开发和维护,可以在Red ...

  4. Linux CentOS7 VMware 安装软件包的三种方法、rpm包介绍、rpm工具用法、yum工具用法、yum搭建本地仓库

    一.安装软件包的三种方法 Linux下游三种安装方法,rpm工具.yum工具.源码包.rpm按装一个程序包时,有可能因为该程序包依赖另一个程序包而无法安装:yum工具,可以连同依赖的程序包一起安装. ...

  5. Linux中rpm命令用法听语音

    rpm 是红帽(RedHat)软件包管理工具,实现类似于 Windows 中的添加/删除程序功能.下面,就来向大家介绍 rpm 命令的用法. 工具/原料 CentOS 一.rpm常用参数 1 rpm ...

  6. RPM命令用法

    安装一个包 rpm –ivh 升级一个包 rpm -Uvh 移走一个包 rpm -e 4.校验rpm包 rpm -V < rpm package name> 5.查询一个包是否被安装 rp ...

  7. RPM命令用法详解

    RPM 有五种基本的操作方式(不包括创建软件包): 安装, 卸载, 升级, 查询,和验证. 下面我们就来逐一的讲解吧. 一. 安装RPM包 RPM 软件包通常具有类似foo-1.0-1.i386.rp ...

  8. rpm命令用法小结

    rpm 是用来管理 Redhat系列的包管理工具: 通过将打包编译好的程序包文件放置在各自的位置上,就完成了安装: rpm   [OPTIONS]   PACHAGE_FILE 1 安装:: -i : ...

  9. Linux中rpm命令用法

    rpm -ivh 软件包名 安装软件包并显示安装进度.这个是用得最多的了. rpm -qa 查询已经安装哪些软件包. rpm -q 软件包名 查询指定软件包是否已经安装. rpm -Uvh  软件包名 ...

随机推荐

  1. 用编程的方式定义UI界面

    package com.example.administrator.test_hello_world; import android.app.Activity; import android.os.B ...

  2. Mysql中主从复制的原理、配置过程以及实际案例

    Mysql中主从复制的原理.配置过程以及实际案例1.什么是主从复制?原理:主从分离,什么意思呢?我们不妨画个图看看.如图1所示: 2.准备工作:预备两台服务器,我这里使用虚拟机安装了两个Centos6 ...

  3. hdu 1005解题报告

    这道题目n的取值范围很大,1 <= n <= 100,000,000.因此肯定是需要优化才能AC. 首先我考虑到时是有没有通项公式,研究了一下,没发现什么东西,突然看到两个1时就想到会不会 ...

  4. bootstrap中下拉菜单点击事件 uncaught syntaxerror unexpected end of input异常问题

    原代码: <ul class="dropdown-menu" role="menu"> <li><a href="jav ...

  5. EL表达式 requestScope initParam用法

    EL表达式 requestScope initParam用法: servlet: package com.stono.servlet; import java.io.IOException; impo ...

  6. Spring 使用context:annotation-config的设置

    Spring 使用context:annotation-config的设置: 还是需要声明Bean的,并且还可能自己定义Annotation: xml: <?xml version=" ...

  7. java二维码生成-谷歌(Google.zxing)开源二维码生成学习及实例

    java二维码生成-谷歌(Google.zxing)开源二维码生成的实例及介绍   我们使用比特矩阵(位矩阵)的QR码编码在缓冲图片上画出二维码 实例有以下一个传入参数 OutputStream ou ...

  8. IOS苹果手机上 iframe 滚动失效条问题,局部滚动开启弹性滚动!

    html:bo<div class="scroll-wrapper"> <iframe src=""></iframe> & ...

  9. Recurrent Neural Network系列3--理解RNN的BPTT算法和梯度消失

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 这是RNN教程的第三部分. 在前面的教程中,我们从头实现了一个循环 ...

  10. HDU 2585 [Hotel]字符串递归处理

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2585 题目大意:马克思要找个曾经去过的很好的旅馆,可惜他记不完整旅馆的名字.他有已知的部分信息和可能的 ...