欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

rpm安装、卸载、查询软件包

程序员文章站 2022-07-13 21:39:30
...

在linux系统上需要安装各种各样的依赖软件包,如果机器可以联网,那么还是比较方便的,但是如果不能联网,只能手工下载安装各种软件包,也是挺醉的,安装某个软件包A,A可能依赖于其它B1~B3个软件包,而每个Bx又可能依赖于其它Cx~Cx个软件包,简直没完没了。

那么如果采取最笨的方法逐个下载,逐个安装,也是需要了解在CentOS系统下如何安装rpm包吧。

首先下载对应的rpm软件包,可以在centos.pkgs.org上下载, 基本都能够覆盖,而且还会给出每个软件包的依赖关系。

在centos上搜索下载软件包时,最好限制搜索的范围,如下图所示(比如搜索opencv包时,限制distribution为 CentOS7):

rpm安装、卸载、查询软件包

准备好rpm的安装包之后就是如何安装这些包了。

1. 查询

rpm -q xxx.xx.xx 
  • 可以查询是否安装了某个安装包。查询时需要使用安装包的完整名称(可以不包括版本号,加上完整的版本号也是可以的)
    比如对于 opencv-2.4.5-3.el7.x86_64.rpm安装包,查询语句可以如下:
rpm -q opencv
rpm -q opencv-2.4.5-3
  • 但对于opencv-devel-2.4.5-3.el7.x86_64.rpm,则需要使用下面的查询语句
rpm -q opencv-devel
rpm -q opencv-devel-2.4.5-3
  • 查询时,也可以一次性查询系统上所有的安装包
rpm -qa

2. 安装/更新

rpm -i xxx.xx.xx
  • 该命令可以用于安装rpm包,但如果在系统已经安装了其它版本的软件包,直接安装则会提示冲突。因此需要更新该rpm包,使用软件包的更新命令
rpm -U xxx.xx.xx
  • 注意:是大写的U

3. 卸载

rpm -e xxx.xx.xx
  • 该命令用于卸载rpm的软件包,如果卸载的软件包不被其它的软件依赖,那么可以直接卸载,否则是卸载不了的,会一直提示该软件包被xxx.xx.xx等依赖。如果一定要卸载,那么可以强制卸载软件包,命令如下:
rpm -e --nodeps xx.x.xxx