紅聯Linux門戶
Linux幫助

Fedora 安裝Ansible新版和替代版本的 RPM 包

發布時間:2019-06-28 19:09:09來源:紅聯作者:Fedora 安裝Ansibl

Ansible 是世界上最受歡迎的自動化引擎之一。它能讓你自動化幾乎任何事情,從本地系統的設置到大量的平臺和應用。它是跨平臺的,因此你可以將其用于各種操作系統。請繼續閱讀以獲取有關如何在 Fedora 中獲取最新 Ansible,以及它的一些更改和改進,以及如何使用它。


發布版本和功能

Ansible 2.8 最近發布了,其中包含許多修復、功能和增強。僅僅幾天之后,它就可在 Fedora 29 和 30 以及 EPEL 中獲取。兩周前發布了后續版本 2.8.1。同樣,新版本在幾天內就可以在 Fedora 中獲取。


使用 sudo 能夠非常容易地從官方倉庫安裝:

$ sudo dnf -y install ansible

2.8 版本有很長的更新列表,你可以在 2.8 的遷移指南中閱讀查看。但其中包含了一些好東西,比如 Python 解釋器發現功能 。Ansible 2.8 現在會試圖找出哪個 Python 是它所運行的平臺的首選版本。如果失敗,Ansible 會使用后備列表。但是,你仍然可以使用變量 ansible_python_interpreter 來設置 Python 解釋器。


另一個變化使 Ansible 在各個平臺上更加一致。由于 sudo 專用于 UNIX/Linux,而其他平臺并沒有,因此現在在更多地方使用 become。這包括了命令行開關。例如,-ask-sudo-pass 已變成了 -ask-become-pass,提示符也變成了 BECOME password:。


2.8 和 2.8.1 版本中還有許多其他功能。有關所有細節,請查看 GitHub 上的官方更新日志。


使用 Ansible

也許你不確定 Ansible 是否可以實際使用。別擔心,你并不是唯一一個這樣想的,因為它太強大了。但事實證明,它并不難以使用,在一個家庭內的幾臺電腦(甚至一臺電腦)上設置都可以。


Modularity使 Fedora 能夠在倉庫中提供替代版本的 RPM 軟件包。每個 Fedroa 版本可以原生構建不同應用、語言運行時和工具版本的多個版本。


Fedora Magazine 大約一年前就寫了 Fedora 28 服務器版的模塊化。那時,它只是一個有附加內容的可選倉庫,并且明確只支持服務器版。到目前為止,它已經發生了很多變化,現在模塊化是 Fedora 發行版的核心部分。一些軟件包已完全變成模塊。在編寫本文時,Fedora 30 的 49,464 個二進制 RPM 軟件包中的 1,119(2.26%)來自模塊(關于這個數字的更多信息)。


模塊化基礎知識

由于許多軟件包有不同的版本會讓人難以承受(并且難以管理),所以包被分組為模塊,它可以代表一個應用程序、一個語言運行時或任何其他合理的組。


模塊通常有多個流,這通常代表軟件的主要版本。它可以并行使用,但在給定系統上只能安裝每個模塊的一個流。


為了不讓用戶因為太多選擇而難以承受,每個 Fedora 版本都有一組默認,因此只需要在需要時做出決定。


最后,為了簡化安裝,可以根據用例使用預定義的 profile 選擇性地安裝模塊。例如,數據庫模塊可以作為客戶端,服務端或同時安裝。


實際使用模塊化

當你在 Fedora 系統上安裝 RPM 軟件包時,它很可能它來自模塊流。你可能沒有注意到的原因之一是模塊化的核心原則之一是在你探究之前保持不可見。


讓我們比較以下兩種情況。首先,安裝流行的 i3 平鋪窗口管理器,然后安裝極簡化的 dwm 窗口管理器:


$ sudo dnf install i3

...
Done!

正如所料,上面的命令會在系統上安裝 i3 包及其依賴項。這里沒有其他事情發生。但另一個會怎么樣?


$ sudo dnf install dwm

...
Enabling module streams:
  dwm                 6.1
...
Done!

感覺是一樣的,但后臺發生了一些事情 。它啟用了默認的 dwm 模塊流(6.1),并且安裝了模塊中的 dwm 包。


為了保持透明,輸出中有一條關于模塊自動啟用的消息。但除此之外,用戶不需要了解模塊化的任何信息,以便按照他們一貫的方式使用他們的系統。


但如果他們使用模塊化方式呢?讓我們看看如何安裝不同版本的 dwm。


使用以下命令查看可用的模塊流:


$ sudo dnf module list
...
dwm                 latest                ...
dwm                 6.0                   ...
dwm                 6.1 [d]               ...
dwm                 6.2                   ...
...
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

輸出顯示 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

...
postgresql          9.6            client, server     ...
postgresql          10             client, server     ...
postgresql          11             client, server     ...
...

要安裝 PostgreSQL 11 服務端,使用以下命令:

$ sudo dnf module install postgresql:11/server

請注意,除了啟用流之外,我們可以指定配置從而使用一條命令安裝模塊。


可以立即安裝多個版本。要添加客戶端工具,使用下面的命令:


$ sudo dnf module install postgresql:11/client

還有許多其他帶有多個流的模塊可供選擇。在編寫本文時,Fedora 30 中有 83 個模塊流。包括兩個版本的 MariaDB、三個版本的 Node.js、兩個版本的 Ruby 等等。


文章評論

共有 0 條評論

601268股票行情中心