云网牛站
所在位置:首页 > Linux教程 > 在Fedora中安装替代版本的RPM,附Modularity相关介绍

在Fedora中安装替代版本的RPM,附Modularity相关介绍

2019-06-13 10:41:25作者:曼画月稿源:云网牛站

Modularity使Fedora能够在存储库中提供替代版本的RPM软件包,有多个不同的应用程序,语言运行时和工具可用于多个版本,每个Fedora版本都可以本机构建。Modularity刚开始时只是一个带有附加内容的可选存储库,并且作为标题提示,仅适用于Server Edition,现在Modularity是Fedora发行版的核心部分,一些软件包已完全转移到modules,在选写本文时,Fedora 30中的49464个二进制RPM软件包有1119(2.26%)来自一个module。

在Fedora中安装替代版本的RPM,附Modularity相关介绍

 

Modularity基础

因为在多个版本中包含太多包可能难以管理,所以将包分组为表示应用程序,语言运行时或任何其他合理组的模块。

模块通常有多个流,通常代表软件的主要版本,可并行使用,但在给定系统上只能安装每个模块的一个流。

每个Fedora版本都带有一组默认值,所以只需要在需要时做出决定。

最后,为了简化安装,可以根据用例使用预定义的配置文件选择性地安装模块,例如,数据库模块可以安装为客户端,服务器或两者。

 

实践中的Modularity

当你在Fedora系统上安装RPM软件包时,很可能它来自module stream,你可能没有注意到的原因之一是Modularity的核心原则之一,在有理由了解它之前保持不可见。

让我们比较以下两种情况,首先,安装流行的i3平铺窗口管理器,然后安装极简主义的dwm窗口管理器:

$ sudo dnf install i3

...

Done!

参考:在Fedora 28系统中安装和使用i3窗口管理器

正如所料,上面的命令会在系统上安装i3软件包及其依赖项,这里没有其他事情发生,但另一个怎么样?如下:

$ sudo dnf install dwm

...

Enabling module streams:

dwm 6.1

...

Done!

感觉是一样的,但后台发生了一些事情,启用了默认的dwm module stream(6.1),并安装了module中的dwm软件包。

为了transparent,有一条关于输出中模块自动启用的消息,但除此之外,用户不需要了解Modularity的任何信息,以便按照他们一贯的方式使用他们的系统。

但如果他们这样做呢?让我们看看如何安装不同版本的dwm。

使用以下命令查看可用的module streams:

$ sudo dnf module list

在Fedora中安装替代版本的RPM,附Modularity相关介绍

输出显示dwm模块有四个流,6.1是默认值。

要以不同的版本安装dwm软件包,例如,从6.2流中,启用流,然后使用以下两个命令安装软件包:

$ sudo dnf module enable dwm:6.2

...

Enabling module streams:

dwm 6.2

...

Done!

$ sudo dnf install dwm

...

Done!

最后,让我们看看配置文件,以PostgreSQL为例:

$ sudo dnf module list

在Fedora中安装替代版本的RPM,附Modularity相关介绍

要将PostgreSQL 11安装为服务器,请使用以下命令:

$ sudo dnf module install postgresql:11/server

请注意,除了启用,在指定配置文件时,可以使用单个命令安装模块。

可以一次安装多个配置文件,要添加客户端工具,请使用以下命令:

$ sudo dnf module install postgresql:11/client

还有许多其他模块可供选择,在选写本文时,Fedora 30中有83个module streams,包括两个版本的MariaDB,三个版本的Node.js,两个版本的Ruby,以及更多。

 

相关主题

dnf命令_Linux dnf命令使用详解:新一代的RPM软件包管理器

精选文章
热门文章