目录

  • 前言
  • 一、RPM软件包管理
    • 1、 安装RPM软件包
    • 2、 卸载RPM软件包
    • 3、 升级刷新RPM软件包
    • 4、查询RPM软件包



前言

  • 在Linux系统中,最常用的软件包是RPM包和tar包
  • 要管理RPM软件包可以使用rpm和yum命令(centos8使用dnf命令管理)
    • yum命令自动化地收集RPM软件包的相关信息,检查依赖性,并且一次性安装所有依赖的软件包,无须繁琐地一次次安装
    • dnf是新一代的RPM软件包管理器。DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容


一、RPM软件包管理

graph LR A(安装RPM软件包) --> B(由系统判断是否满足安装条件) B --> C(具备安装条件) C --> C_1(安装RPM软件包) B --> D(RPM软件包不满足依赖条件) D --> D_1(不安装RPM软件包) D --> D_2(解决安装依赖条件) D_2 --> B

1、 安装RPM软件包

  1. 安装 example.rpm 包

  • rpm -i example.rpm

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

  • rpm -iv example.rpm

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

  • rpm -ivh example.rpm

只对安装进行测试,并不实际安装软件包

  • rpm -ivh --test example.rpm

在软件包已经安装的情况下仍旧安装该软件

  • rpm -ivh --replacepkgs example.rpm

忽略软件包依赖关系,强行安装软件包

  • rpm -ivh --nodeps example-xxx.rpm

2、 卸载RPM软件包

  1. 卸载已安装软件包

  • 卸载时需要使用包名称,而非文件包名称,通常需要使用rpm -q …命令查出需要卸载的安装包名称
  • rpm -e example

强制卸载软件包

  • 由于软件包存在依赖关系,所以部分卸载时会提示依赖检测失败,此时忽略依赖关系强制卸载
  • rpm -e --nodeps example

3、 升级刷新RPM软件包

  1. 升级
  • 实际上是先卸载后安装的组合
  • 不管该软件早期版本是否已被安装,升级选项都会安装该软件包
  • rpm -Uvh example.rpm
刷新
  • 刷新软件包时,系统会比较指定的软件包版本与系统软件包版本
  • 如果软件包没有预先安装,RPM的刷新选项将不会安装该软件包
  • rpm -Fvh example.rpm

4、查询RPM软件包

  1. 查看 tomcat4 是否被安装
  • rpm -qa | grep example
查看 example.rpm 安装包的信息
  • rpm -qip example.rpm
查看/bin/df 文件所在安装包的信息
  • rpm -qif /bin/df
查看/bin/df 文件所在安装包中的各个文件分别被安装到哪个目录下
  • rpm -qlf /bin/df