千家信息网

Linux怎么使用RPM工具管理软件

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,一、RPM介绍1. RPM含义RPM的全称是:Red Hat Package Manager,是RPM软件包管理器。在Linux系统中对应命令是rpm,我们看到名称中含有Red Hat,也就说明主要是
千家信息网最后更新 2024年11月11日Linux怎么使用RPM工具管理软件

一、RPM介绍

1. RPM含义

RPM的全称是:Red Hat Package Manager,是RPM软件包管理器。在Linux系统中对应命令是rpm,我们看到名称中含有Red Hat,也就说明主要是在Red Hat发行版中使用的,除此之外还包括和Red Hat最亲近的CentOS,以及其他一些主流发行版:SuSE、Fedora等。

2. RPM特点

  • rpm也是一种打包格式,使用rpm工具来进行管理
  • rpm包是预先已经编译并打包的文件,安装较为方便
  • 存在rpm相关的数据库,记录各软件间的依赖关系
  • 如果缺少相关依赖,则无法正常安装或无法正常运行
  • 如果逐一寻找依赖,在寻找过程中可能还有依赖关系,将会变成噩梦
  • 可以用yum工具解决rpm依赖问题,在后续文章中介绍

3. 软件包名称

  • vim:软件名称部分
  • enhanced:软件组件部分
  • 7:主版本号
  • 4:次版本号
  • 629:修订号
  • 5:发布次数
  • el6_10.2:平台名称,表示适用于哪种发行版
  • x86_64:系统位数,i386等表示适用于32位,x86_64表示适用于64位,noarch表示通用

二、常用命令

1. 查询

在进行软件查询时,适用rpm工具只能查询到以rpm软件包形式安装的软件信息,解压和编译安装的软件无法查询到信息。

  • q:query的简写

(1)查询已安装的软件信息

  • rpm -q 准确软件名称:查询某一个已安装软件

  • rpm -qa:显示已安装的所有软件列表

  • rpm -qi 准确软件名称:查询指定安装软件的详细信息

  • rpm -ql 准确软件名称:查看指定的软件包在系统中对应的目录和文件列表

  • rpm -qf 目录或文件夹:查看当前指定的文件或目录对应的软件包

  • 不确定具体名称时可以使用管道和筛选功能:rpm -qa|grep vim

  • 统计已安装的软件包总数:rpm -qa|wc -l


(2)查询未安装的软件信息
该操作主要是在软件包安装之前进行详细信息的查询,所以传入的参数是一个存在的软件包的路径。

  • rpm -qpi 软件包完整路径:查询待安装软件的详细信息

  • rpm -qpl 软件包完整路径:查询待安装软件的安装路径

2. 验证

使用-V可以验证软件包的正确性。

  • V:verify的简写

(1)常用命令

  • rpm -V 准确软件名称:只有校验失败时才会出现信息
  • rpm -Va:扫描验证所有软件包(推荐使用root用户,不会出现权限问题),列出产生变更的项目、欠佳的依赖关系、缺失的关键配置文件等


(2)信息标识

校验信息的后半部分显示对应的目录或文件,前半部分用大写字母表示产生变动的项目。

  • S:大小改变
  • M:权限改变
  • 5:MD5改变
  • L:链接改变
  • D:设备改变
  • U:属主改变
  • G:数组改变
  • T:修改时间改变

3. 卸载

软件包的卸载需要使用root用户来执行,必须完整提供卸载软件包的名称,可以先通过筛选查询获取。

  • e:erase的简写(擦除)

在进行卸载操作时,可能有其他软件依赖于此软件,卸载后可能会导致其他软件不可用,如果存在依赖关系,则会显示依赖信息,如果执意要删除,可以使用忽略依赖的选项:--nodeps。

  • rpm -e [--nodeps] 准确软件名称:卸载一个已安装软件,忽略依赖为可选项
rpm -e --nodeps vim-enhanced

4. 安装

软件包的安装需要使用root用户来执行,安装前一般会先查询已安装的相关软件,并卸载与之冲突的软件。

  • i:install的简写

在进行软件安装时,可能系统当中缺少某个依赖,导致无法正常安装,可以使用--force选项进行强制安装,但无法保证安装后能够正常使用。常规的解决办法是先安装需要的依赖软件包,再安装该软件,或者使用yum工具。

  • rpm -i [--force] 软件包完整路径:安装一个软件,强制安装为可选项
  • rpm -ivh 软件包完整路径:常用命令,安装一个软件,显示详细信息和进度(用#表示)

    5. 升级

    与安装类似,使用root用户操作来操作,升级某一软件。

  • U:update的简写
  • F:freshen的简写

由于在升级时,旧版本的软件可能已经安装,也可能从未安装,针对这种情况,提供了两个参数。

  • U表示:如果对应的软件包原来未安装,则直接安装,和i的效果相同
  • F表示:如果对应的软件包原来未安装,则放弃安装

  • rpm -U/F 软件包完整路径:升级一个软件

    6. 维护

    (1)RPM数据库维护
    如果本机的RPM数据库损坏,可能会导致无法正确的读取依赖关系,致使无法正常执行rpm相关功能,此时可以使用--initdb选项。

    rpm --initdb

    (2)签名验证
    当下载了一个软件后,如果我们无法确保它的来源,以及是否被篡改,则需要使用相应的GPG文件。一般在光盘镜像、网络镜像中都可以找到该文件,使用--import命令导入,在安装软件时会自动生效。

    rpm --import /mnt/cdrom/RPM-GPG-KEY-CentOS-6
软件 软件包 查询 信息 名称 文件 路径 简写 命令 工具 用户 目录 系统 升级 验证 常用 数据 数据库 版本 发行 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 a1考勤管理系统数据库 永兴安卓软件开发培训 数据库表结构如何修改 北京亿联云网络技术有限公司 使用镜像服务器安全吗 西安互联网科技有限公司 广州亚卓网络技术有限公司好吗 网络安全法帮助信息网络犯罪 服务器关机记录如何查 盗贼之海5人怎么进同一个服务器 容器数据库 网络安全的空心字怎么写 计算机网络技术课后感想 如何同步ntp服务器 腾讯云服务器到期了多久释放 合肥软件开发为什么要定制 风电发展十三五规划数据库 网络安全与社会经济 广东学软件开发到哪里 海南北斗时间频率同步服务器 方舟怎么进自己的服务器新手教程 数据库表结构如何修改 嵌入式软件开发做账 关系数据库的特点在第几章 网络安全漂亮的手抄报文字少 网络安全立法原则 义乌软件开发专业 TP开头的网络安全吗 主机跟服务器的区别 宁波梦幻西游服务器
0