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. PHP导入导出Excel方法

    看到这篇文章的时候,很是惊讶原作者的耐心,虽然我们在平时用的也 有一些,但没有作者列出来的全,写excel的时候,我用过pear的库,也用过pack压包的头,同样那些利用smarty等作的简单替换xm ...

  2. C++第三天学习

    回顾: 类和对象 class 类名 { public: private: 在类的类部可以访问,在类的外部不能直接访问. protected: 在类的类部可以访问,在类的外部不能直接访问,其子类可以访问 ...

  3. BNU Online Judge-34976-数细菌

    题目链接 http://www.bnuoj.com/bnuoj/problem_show.php?pid=34976 题目分析通过a b可以设x,y x+y=a    x+3*y=b  解出x,y, ...

  4. Windows 7 下 PHP 开发环境搭建(手动)

    Windows 7 下 PHP 开发环境搭建 1.说明 做开发的都知道一句话,就是“站在巨人的肩膀上”.确实现在打开浏览器随便一搜很多一键安装PHP环境的软件,比如wamp.xampp.AppServ ...

  5. easyui message show中msg嵌入一个按钮如何绑定事件

    http://www.oschina.net/question/945028_171927

  6. JSP编译为Java类

    JSP编译为Java类: 注意可以随便写import的内容:可以写类属性.方法.main函数.内部类:可以使用内部类: JSP: <%@ page language="java&quo ...

  7. 【c基础】之 文件及其操作

    文件的打开与关闭 首先要定义一个文件指针类型,格式为 FILE *文件指针名; ; FILE *fp; //fp就是定义的文件指针 ●打开文件fopen()函数,格式: fp = fopen(&quo ...

  8. 关于Coursera上的斯坦福机器学习课程的编程作业提交问题

    学习Coursera上的斯坦福机器学习课程的时候,需要向其服务器提交编程作业,我遇到如下问题: 'Submission failed: unexpected error: urlread: Peer ...

  9. Docker 1.13 管理命令

    1.12 CLI 的问题 Docker1.12 命令行接口(CLI)有40多个顶级命令,这些命令存在以下问题: 没有归类组织,这让docker 新手很难学习: 有些命令没有提供足够的上下文环境,以至于 ...

  10. Scrollview回弹效果自定义控件

    滚动回弹效果分析: 首先,创建一个类,继承scrollview,重写ontouch事件,实现伸缩回弹效果. [scroollview节点下只能有一个子节点,这个子节点就是我们要移动的view布局]   ...