找回密码
 骑士注册

QQ登录

微博登录

搜索
❏ 站外平台:

查看: 541|回复: 0
收起左侧

简单介绍rpm 命令

[复制链接]
leiyang 发表于 2018-03-24 23:48:08 | 显示全部楼层 |阅读模式
本帖最后由 leiyang 于 2018-03-24 23:48 编辑

如果您的工作涉及到Linux中的软件包管理,则需要了解几种命令行工具。其中之一是rpm,您可以访问它来访问软件包。软件包管理工具的作用是提供在操作系统中安装,升级,卸载需要的软件的方法,并提供对系统中所有软件状态信息的查询。我们将使用一些易于理解的事例来讨论程序的基础知识。

请注意,这里提到的所有事例都已在中兴新支点操作系统上进行了测试。中兴新支点操作系统是一个致力于为全球用户提供美观易用,基于Linux开发的自主、可控、安全的国产操作系统。

Linux rpm命令

rpm是一个功能十分强大的软件包管理系统,它使Linux下安装、升级和删除软件包的工作变得简单容易,并且具有查询、验证软件包的功能。与图形化工具相比,使用命令行可以获得更大的灵活性。

本章例子都以net-snmp-libs-5.7.2-28.el7_4.1.x86_64.rpm代表软件包名称。

以下以问答的方式让您更好了解rpm的工作原理。

Q1、如何使用rpm命令安装、升级和更新软件包?

首先我们要先了解rpm的基本用法,rpm 的常规使用方法为 rpm -? net-snmp-libs-5.7.2-28.el7_4.1.x86_64.rpm,其中 -? 为操作参数。

使用下面三个参数安装、升级和更新软件包:

  1. rpm -i 安装一个新的软件包
  2. rpm -U 升级一个软件包,如果系统中原来不存在,就进行安装
  3. rpm -F 更新一个软件包,如果系统中原来不存在,就不进行安装

经常和这几个参数配合使用的参数包括:

  1. -v 查看安装过程中的各种信息
  2. -h 在安装过程中显示进度条

以上参数有些需要组合使用,比如说 rpm -h net-snmp-libs-5.7.2-28.el7_4.1.x86_64.rpm是没有意义的,但 rpm -ih net-snmp-libs-5.7.2-28.el7_4.1.x86_64.rpm 即表示安装net-snmp-libs并用 # 符显示安装进度。

安装 rpm包,同时显示安装信息和进度条

       # rpm -ivh net-snmp-libs-5.7.2-28.el7_4.1.x86_64.rpm

升级 rpm 包命令,同时显示安装信息和进度条

      # rpm -Uvh net-snmp-libs-5.7.2-28.el7_4.1.x86_64.rpm

在该步骤中如果使用 -i 则系统通常会报文件冲突错误,无法正常安装。

Q2、如何删除软件包?

如果您想要删除软件包,则可以使用 -e 命令行选项在系统中卸载软件。

卸载 rpm 包命令,同时显示安装信息:

       # rpm -ev net-snmp-libs

  • 警告:删除时使用的是软件名,而不是软件包的全称。

Q3、如何使用rpm查询系统中已经安装的rpm 包?

1、列出用户已经安装的rpm包清单

如果想查询系统中所有已经安装的rpm 包,使用rpm -qa即可输出所有己安装rpm 包的列表。

      # rpm -qa

如果是查看某个已经安装的软件包,则使用rpm -q net-snmp-libs命令。

      # rpm -q net-snmp-libs

2、查看一个RPM 包中包括的文件

想要查看某个软件包中包含的文件清单,有下面两种方法:

如果是未安装的软件包,则使用:

      # rpm -qlp net-snmp-libs-5.7.2-28.el7_4.1.x86_64.rpm

如果是已安装的软件包,请使用:

      # rpm -ql net-snmp-libs

3、确定某个文件属于哪个rpm 包

如果遇到了一个不认识的文件,要找出它属于哪个软件包,则首先记录这个文件的完整路径(绝对路径),然后输入以下命令:

      # rpm -qf filename

4、查询RPM 包的用途

用户可以在安装或使用时查询每个软件包的用途、版本及其它信息,使用如下的命令完成查询:

      # rpm -qip net-snmp-libs-5.7.2-28.el7_4.1.x86_64.rpm

Q4、如何验证

验证一个软件包,就是比较原始包和已安装软件包中文件的信息。具体来说,这些信息包括每个文件的大小、MDS校验和、访问许可权、类型以及所属的用户和组等。

使用命令rpm -V可以验证一个包,下面是常用的几种情况:

      验证包含某个特殊文件的软件包

             # rpm -Vf filename

      验证所有己安装的软件包

            # rpm -Va

Q5、如何获得关于rpm的帮助?

--help命令行选项是rpm为该工具生成有用的用法相关信息。

总结

本文以中兴新支点操作系统为例,基于命令行操作,介绍了 Linux 系统中两大常用软件包管理工具之一rpm 。上面介绍是几个常用的rpm命令,关于rpm工具的更多资源,请参看相关的man手册页。

您需要登录后才可以回帖 登录

本版积分规则

快速回复 返回顶部 返回列表

分享到微信

打开微信,点击顶部的“╋”,
使用“扫一扫”将网页分享至微信。