方法如何在CentOS上安装RPM

通常,用户使用yum命令行实用程序安装软件包。正式的CentOS储存库包含数千个RPM软件包,但是在某些情况下,您可能会遇到不在储存库中的RPM文件。

一些软件作者仅提供可下载的RPM文件进行安装,因此RPM文件被设计为单独下载并在软件存储库之外安装。

在本教程中,您将学习如何在Linux CentOS发行版上安装.rpm文件。

什么是RPM软件包管理器

Red Hat Package Manager是一个免费的开源软件包管理系统,用于安装,卸载和管理CentOS和Fedora等衍生软件包。

前提条件

在开始之前,需要确保您具有sudo特权,并且已在系统上安装了一些RPM,DNF和YUM软件包管理器(默认情况下全部包含)。

此外,还要确保要安装的RPM软件包是针对您的系统体系结构和CentOS版本构建的。

就本教程而言,请在CentOS 8上下载并安装Slack RPM软件包。

下载RPM安装包

通常,您使用Web浏览器来查找和下载.rpm文件,但是您也可以使用命令行工具,例如wget和curl命令。

例如,使用wget命令将slack软件包(rpm)下载到当前目录,如下所示:

$ wget https://downloads.slack-edge.com/linux_releases/slack-4.3.2-0.1.fc21.x86_64.rpm
--2020-02-15 23:11:20--  https://downloads.slack-edge.com/linux_releases/slack-4.3.2-0.1.fc21.x86_64.rpm
Resolving downloads.slack-edge.com (downloads.slack-edge.com)... 99.86.243.67, 99.86.243.88, 99.86.243.60, ...
Connecting to downloads.slack-edge.com (downloads.slack-edge.com)|99.86.243.67|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 60768380 (58M) [application/octet-stream]
Saving to: ‘slack-4.3.2-0.1.fc21.x86_64.rpm’

slack-4.3.2-0.1.fc21.x86_6 100%[========================================>]  57.95M   584KB/s    in 2m 19s  

2020-02-15 23:13:40 (427 KB/s) - ‘slack-4.3.2-0.1.fc21.x86_64.rpm’ saved [60768380/60768380]

使用RPM命令安装RPM文件

您可以使用两种方法安装RPM软件包。第一个使用RPM命令,第二个使用yum软件包管理器。

与以下命令一起使用 -i 可以选择安装下载rpm软件包:

$ sudo rpm -i ./slack-4.3.2-0.1.fc21.x86_64.rpm 
warning: ./slack-4.3.2-0.1.fc21.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 8e6c9578: NOKEY
error: Failed dependencies:
	libXScrnSaver is needed by slack-4.3.2-0.1.fc21.x86_64
	libappindicator-gtk3 is needed by slack-4.3.2-0.1.fc21.x86_64

从上面的输出中,您可以看到由于缺少相关性软件包而导致安装失败。因此,您需要检查rpm相关软件包并手动安装它们。

检查RPM依赖性

有两个rpm选项可检查软件包的依赖性。可以使用 -qpR 查询rpm文件, -qR 按软件包名称查询。

rpm -qpR .rpm-file
rpm -qR package-name

例如,查询.rpm(使用slack rpm)文件以查找所有必需的依赖项。

$ sudo rpm -qpR slack-4.3.2-0.1.fc21.x86_64.rpm
warning: slack-4.3.2-0.1.fc21.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 8e6c9578: NOKEY
libXScrnSaver
libappindicator-gtk3
libsecret-1.so.0()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1

使用yum安装RPM软件包

一个有用的工具出现了 yum 无需担心依赖关系。这个yum软件包管理器将采用并设置所有必需的依赖项。

使用yum软件包管理器通过以下命令安装下载的软件包:

$ sudo yum localinstall ./slack-4.3.2-0.1.fc21.x86_64.rpm 
CentOS-8 - AppStream                                  6.4 kB/s | 4.3 kB     00:00    
CentOS-8 - Base                                       5.2 kB/s | 3.8 kB     00:00    
CentOS-8 - Extras                                     2.7 kB/s | 1.5 kB     00:00      
Extra Packages for Enterprise Linux Modular 8 - x86_6  26 kB/s |  27 kB     00:01    
Extra Packages for Enterprise Linux 8 - x86_64         20 kB/s |  29 kB     00:01    
Dependencies resolved.
======================================================================================
 Package        Architecture    Version                   Repository             Size
======================================================================================
Installing:
 slack          x86_64          4.3.2-0.1.fc21            @commandline           58 M

Transaction Summary
======================================================================================
Install  1 Package

Total size: 58 M
Installed size: 185 M
Is this ok [y/N]: 

输入后 y 安装所有依赖项和软件包。

Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                              1/1 
  Installing       : slack-4.3.2-0.1.fc21.x86_64                                  1/1 
  Running scriptlet: slack-4.3.2-0.1.fc21.x86_64                                  1/1 
  Verifying        : slack-4.3.2-0.1.fc21.x86_64                                  1/1 

Installed:
  slack-4.3.2-0.1.fc21.x86_64                                                         

Complete!

删除RPM包

要删除RPM软件包,请指示RPM删除软件。 -e 可选的。

以下示例卸载(删除)了slack软件包。

$ sudo rpm -e slack-4.3.2-0.1.fc21.x86_64

结论

本教程展示了如何在CentOS上安装和删除RPM软件包。我们建议您使用yum over rpm自动解决所有依赖性。 Yum使跟踪安装,更新和先决条件变得容易。

Sidebar