Linux 中 RPM包 安装 查询 卸载命令小结及yum命令详解

 更新时间:2015年11月24日 11:13:30   投稿:mrr  
RPM 的全称为Redhat Package Manager ,是由Redhat 公司提出的,用于管理Linux 下软件包的软件。Linux 安装时,除了几个核心模块以外,其余几乎所有的模块均通过RPM 完成安装。RPM 有五种操作模式,分别为:安装、卸载、升级、查询和验证

之前一直在用ubuntu,安装卸载软件基本上是使用apt-get 这个非常的简单,而且过程中遇到的软件依赖会自动帮我们处理,类似于傻瓜式安装。另外在 Linux 操作系统下,几乎所有的软件都可以通过RPM 进行安装、卸载及管理等操作。RPM 的全称为Redhat Package Manager ,是由Redhat 公司提出的,用于管理Linux 下软件包的软件。Linux 安装时,除了几个核心模块以外,其余几乎所有的模块均通过RPM 完成安装。RPM 有五种操作模式,分别为:安装、卸载、升级、查询和验证。

RPM 安装操作

命令:

rpm -i 需要安装的包文件名

举例如下:

rpm -i example.rpm 安装 example.rpm 包;

rpm -iv example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息;

rpm -ivh example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息及安装进度;

RPM 查询操作

命令:

rpm -q …

附加查询命令:

a 查询所有已经安装的包以下两个附加命令用于查询安装包的信息;

i 显示安装包的信息;

l 显示安装包中的所有文件被安装到哪些目录下;

s 显示安装版中的所有文件状态及被安装到哪些目录下;以下两个附加命令用于指定需要查询的是安装包还是已安装后的文件;

p 查询的是安装包的信息;

f 查询的是已安装的某文件信息;

举例如下:

rpm -qa | grep tomcat4 查看 tomcat4 是否被安装;

rpm -qip example.rpm 查看 example.rpm 安装包的信息;

rpm -qif /bin/df 查看/bin/df 文件所在安装包的信息;

rpm -qlf /bin/df 查看/bin/df 文件所在安装包中的各个文件分别被安装到哪个目录下;

RPM 卸载操作

命令:

rpm -e 需要卸载的安装包

在卸载之前,通常需要使用rpm -q …命令查出需要卸载的安装包名称。

举例如下:

rpm -e tomcat4 卸载 tomcat4 软件包

RPM 升级操作

命令:

rpm -U 需要升级的包

举例如下:

rpm -Uvh example.rpm 升级 example.rpm 软件包

RPM 验证操作

命令:

rpm -V 需要验证的包

举例如下:

rpm -Vf /etc/tomcat4/tomcat4.conf

输出信息类似如下:

S.5....T c /etc/tomcat4/tomcat4.conf

其中,S 表示文件大小修改过,T 表示文件日期修改过。限于篇幅,更多的验证信息请您参考rpm 帮助文件:man rpm

RPM 的其他附加命令

--force 强制操作 如强制安装删除等;

--requires 显示该包的依赖关系;

--nodeps 忽略依赖关系并继续操作;

下面是脚本之家小编给大家详细介绍一下yum命令的用法。那么什么是YUM呢?它是Yellow dog Updater Modified的缩写。它的出现目的是为了解决RPM包的依赖关系,方便用户进行软件的安装、删除、升级等工作。 
如果你是一个Linux的初学者,一定会被软件的安装所困扰过,尽管RPM包解决了一定层度的问题,但有些RPM的包的依赖关系让人很是头疼。而YUM、APT等一些RPM包的管理方式的出现,使Linux平台上软件的安装变得更加简便。那么什么是YUM呢?它是Yellow dog Updater Modified的缩写。本文将详细介绍yum命令的使用方法,关于YUM仓库的配置将在51开源站点其他技术文档详细讲述。

下面将详述yum命令的用法:

主要参数:

-y     不需要用户确认要发生的操作

1.用YUM安装删除软件

yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,你可以自己作出判断。
#yum  install  软件名            //用YUM安装指定软件包
#yum  remove  软件名           //用YUM删除指定软件包
#yum localinstall RPM包文件   //使用YUM方式安装本地RPM包
#yum groupinstall <分组名称>   //安装指定分组内所有软件
#yum groupremove packagegroup <分组名称> //删除指定分组内所有软件
注意:install、localinstall的区别:使用install时,指定的软件包将从YUM服务器下载并安装,而localinstall指定的软件使用RPM包安装,而依赖关系所需的包在YUM服务器下载安装。

2.用YUM查询软件信息

#yum check-update          //列出所有可更新的软件清单
#yum -y update       //升级所有已安装软件
#yum -y update <软件名>    //升级指定的软件包
#yum  upgrade //大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级
#yum  groupupdate  <分组名称> //更新指定软件组中的软件包
#yum info   软件名         //显示指定软件包相关信息
#yum info updates           //显示所有可以更新的软件包的信息
#yum info installed          //显示所有已经安装的软件包的信息
#yum info extras       //显示所有已经安装但不在YUM 仓库内的软件包信息
#yum groupinfo <分组名称> //显示指定分组的信息
#yum list                   //列出所有已经安装和可以安装的软件
#yum  list  <regex>    //列出资源库中与正则表达式匹配的可以安装或更新以及已经安装的rpm包
#yum list  软件名         //列出指定的软件包的安装情况
#yum  list  available         //列出资源库中所有可以安装的rpm包
#yum  list  available <regex> //列出资源库中与正则表达式匹配的所有可以安装的rpm包
#yum listinstalled          //列出所有已经安装的软件包
#yum list  installed <regex>  //列出资源库中与正则表达式匹配的所有已经安装的rpm包
#yum list extras          //列出所有已经安装但不在YUM 仓库内的软件包
#yum list extras <regex>//列出与正则表达式匹配的已安装的但不包含在资源库中的rpm包
#yum grouplist              //列出所有YUM服务器定义的分组
#yum search <关键字>      //在YUM源中查找指定关键字
#yum  search <regex>       //检测所有可用的软件的名称、描述、概述和已列出的维护者,查找与正则表达式匹配的值
#yum  list  recent           //列出最近被添加到资源库中的软件包
#yum  provides <regex>      //检测软件包中包含的文件以及软件提供的功能,查找与正则表达式匹配的值
#yum  deplist  <软件包>     //显示软件包的依赖信息

3.清除YUM缓存

yum会把下载的软件包和header存储在cache中,而不会自动删除。
#yum clean packages     //清除缓存目录(/var/cache/yum)下的软件包
#yum clean headers      //清除缓存目录(/var/cache/yum)下的 headers
#yum clean oldheaders   //清除缓存目录(/var/cache/yum)下旧的 headers
#yum clean all     //清除缓存目录(/var/cache/yum)下的软件包及旧的headers
#yum clean     //同上,清除缓存目录(/var/cache/yum)下的软件包及旧的headers

yum命令使用实例

1、升级系统

#yum update

2、安装指定的软件包

# yum -y install vsftpd

3、升级指定的软件包

# yum -y update mysql

4、卸载指定的软件包

# yum -y remore vsftpd mysql

5、查看系统中已经安装的和可用的软件组,对于可用的软件组,你可以选择安装

# yum grouplist

6、安装上一个命令中显示的可用的软件组中的一个软件组,神之编辑器-Emacs,大约安装了12个软件包

# yum -y groupinstall Emacs

7、更新指定软件组中的软件包

# yum -y groupupdate Emacs

8、卸载指定软件组中的软件包,对于Emacs,安装的时候安装了12个软件包,但是卸载的时候只卸载了4个软件包!

# yum  -y  groupremove  Emacs

9、清除缓存中的rpm 头文件和包文件

# yum  clean  all

10、搜索相关的软件包

# yum  -y search  Emacs

11、显示指定软件包的信息

# yum  info  Emacs

和rpm -qi emacs显示的信息差不多,但不完全相同

12、查询指定软件包的依赖信息,emacs依赖的模块不少啊

# yum  deplist  emacs

13、列出所有以 yum 开头的软件包

# yum  list  yum*

14、列出已经安装的但是不包含在资源库中的rpm 包

# yum  list  extras

相关文章

  • Shell脚本实现ftok函数

    Shell脚本实现ftok函数

    这篇文章主要介绍了Shell脚本实现ftok函数,ftok函数是操作系统底层中很有名的一个函数,本文讲在Shell中如何实现同样算法的函数,需要的朋友可以参考下
    2015-01-01
  • 关于"Argument list too long”参数列表过长的四种解决方法

    关于"Argument list too long”参数列表过长的四种解决方法

    Linux下报错“命令参数列表过长”,在用mv命令一次移动3万多个文件时失败了,原始命令类似这样:”mv $(ls dir1) dir2“,错误提示的中心思想是:”你这参数也太TM多了吧“,本文给大家分享四种解决”Argument list too long”参数列表过长,感兴趣的朋友一起看看吧
    2023-02-02
  • 常用Linux Shell进阶部分小结

    常用Linux Shell进阶部分小结

    这篇文章主要介绍了常用Linux Shell进阶部分小结,欢迎收藏,随看随记,需要的朋友可以参考下
    2015-07-07
  • Linux shell 获得字符串所在行数及位置的方法

    Linux shell 获得字符串所在行数及位置的方法

    这篇文章主要介绍了Linux shell 获得字符串所在行数及位置的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Shell脚本实现复制文件到多台服务器的代码分享

    Shell脚本实现复制文件到多台服务器的代码分享

    这篇文章主要介绍了Shell脚本实现复制文件到多台服务器的代码分享,用在多机集群环境中非常方便,需要的朋友可以参考下
    2014-09-09
  • linux shell内置判断语句

    linux shell内置判断语句

    内置判断,成功的时候返回0,不成功返回非零。接下来通过本文重点给大家介绍linux shell内置判断语句,感兴趣的的朋友一起看看吧
    2017-08-08
  • Shell脚本生成Go的程序包的实现步骤

    Shell脚本生成Go的程序包的实现步骤

    通过编写Shell脚本,我们可以大大简化Golang项目的打包和部署流程,本文就来介绍一下Shell脚本生成Go的程序包的实现步骤,感兴趣的可以了解一下
    2024-01-01
  • 自动重启jar包的shell脚本简易实例

    自动重启jar包的shell脚本简易实例

    这篇文章主要为大家介绍了自动重启jar包的shell脚本简易实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • 学习linux常用命令(推荐)

    学习linux常用命令(推荐)

    本文给大家分享小编日常整理的有关linux常用命令,对大家今后的工作学习非常有帮助,对linux常用命令知识感兴趣的朋友一起学习吧
    2016-11-11
  • Linux shell查找文件显示行号和对应区间的内容

    Linux shell查找文件显示行号和对应区间的内容

    今天小编就为大家分享一篇关于Linux shell查找文件显示行号和对应区间的内容,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12

最新评论