如何使用 YUM 安裝特定版本的軟件包

有時,您可能需要在系統上安裝特定版本的軟件包才能符合特定要求。 在本文中,我們將了解如何在 Centos 和 RHEL 7/8 中使用 yum 包管理器安裝特定版本的包。 首先,我們需要知道特定包的可用版本。

另請閱讀: 如何使用 apt-get 安裝特定版本的軟件包

檢查可用版本

打開終端運行以下命令以查看包的所有可用版本:

yum --showduplicates list

在這 example,我們將在您為 RHEL 7 系統啟用的存儲庫中列出可用的 samba 版本。

 yum --showduplicates list samba

樣本輸出

Loaded plugins: amazon-id, rhui-lb, search-disabled-repos
Available Packages
samba.x86_64              4.1.1-31.el7                   rhui-REGION-rhel-server-releases
samba.x86_64              4.1.1-33.el7_0                 rhui-REGION-rhel-server-releases
samba.x86_64              4.1.1-35.el7_0                 rhui-REGION-rhel-server-releases
samba.x86_64              4.1.1-37.el7_0                 rhui-REGION-rhel-server-releases
samba.x86_64              4.1.1-38.el7_0                 rhui-REGION-rhel-server-releases
samba.x86_64              4.1.12-21.el7_1                rhui-REGION-rhel-server-releases
samba.x86_64              4.1.12-23.el7_1                rhui-REGION-rhel-server-releases
samba.x86_64              4.1.12-24.el7_1                rhui-REGION-rhel-server-releases
samba.x86_64              4.2.3-10.el7                   rhui-REGION-rhel-server-releases
samba.x86_64              4.2.3-11.el7_2                 rhui-REGION-rhel-server-releases
samba.x86_64              4.2.3-12.el7_2                 rhui-REGION-rhel-server-releases
samba.x86_64              4.2.10-6.el7_2                 rhui-REGION-rhel-server-releases
samba.x86_64              4.2.10-6.2.el7_2               rhui-REGION-rhel-server-releases
samba.x86_64              4.2.10-7.el7_2                 rhui-REGION-rhel-server-releases
samba.x86_64              4.4.4-9.el7                    rhui-REGION-rhel-server-releases
samba.x86_64              4.4.4-12.el7_3                 rhui-REGION-rhel-server-releases
samba.x86_64              4.4.4-13.el7_3                 rhui-REGION-rhel-server-releases
samba.x86_64              4.4.4-14.el7_3                 rhui-REGION-rhel-server-releases
samba.x86_64              4.6.2-8.el7                    rhui-REGION-rhel-server-releases
samba.x86_64              4.6.2-10.el7_4                 rhui-REGION-rhel-server-releases
samba.x86_64              4.6.2-11.el7_4                 rhui-REGION-rhel-server-releases
samba.x86_64              4.6.2-12.el7_4                 rhui-REGION-rhel-server-releases

由於 Yum 使用 RPM 包管理器來處理包,因此包名稱基於 RPM 包標籤格式。

在上面 example,第一列表示包名稱及其架構,第二列顯示包的版本。 您還會注意到,最新的軟件包位於列表底部。
在這種情況下,samba-4.6.2-12 是最新的包。

安裝特定版本的軟件包

現在我們可以繼續安裝任何版本的 samba 包。 為此,運行我們將在最後追加包的版本。 IE

yum install <packagename> <version>

要根據我們之前顯示的輸出安裝最新版本 4.6.2-12,請運行以下命令

yum install samba-4.6.2-12

如果你想更具體,你可以包含如圖所示的版本發布

yum install samba-4.6.2-12.el7_4

樣本輸出

--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================================================================
 Package                                 Arch                        Version                                Repository                                             Size
========================================================================================================================================================================
Installing:
 samba                                   x86_64                      4.6.2-12.el7_4                         rhui-REGION-rhel-server-releases                      633 k
Installing for dependencies:
 avahi-libs                              x86_64                      0.6.31-17.el7                          rhui-REGION-rhel-server-releases                       61 k
 cups-libs                               x86_64                      1:1.6.3-29.el7                         rhui-REGION-rhel-server-releases                      356 k
 libldb                                  x86_64                      1.1.29-1.el7                           rhui-REGION-rhel-server-releases                      128 k
 libtalloc                               x86_64                      2.1.9-1.el7                            rhui-REGION-rhel-server-releases                       33 k
 libtdb                                  x86_64                      1.3.12-2.el7                           rhui-REGION-rhel-server-releases                       47 k
 libtevent                               x86_64                      0.9.31-1.el7                           rhui-REGION-rhel-server-releases                       36 k
 libwbclient                             x86_64                      4.6.2-12.el7_4                         rhui-REGION-rhel-server-releases                      105 k
 pytalloc                                x86_64                      2.1.9-1.el7                            rhui-REGION-rhel-server-releases                       16 k
 samba-client-libs                       x86_64                      4.6.2-12.el7_4                         rhui-REGION-rhel-server-releases                      4.7 M
 samba-common                            noarch                      4.6.2-12.el7_4                         rhui-REGION-rhel-server-releases                      198 k
 samba-common-libs                       x86_64                      4.6.2-12.el7_4                         rhui-REGION-rhel-server-releases                      164 k
 samba-common-tools                      x86_64                      4.6.2-12.el7_4                         rhui-REGION-rhel-server-releases                      456 k
 samba-libs                              x86_64                      4.6.2-12.el7_4                         rhui-REGION-rhel-server-releases                      265 k

Transaction Summary
========================================================================================================================================================================
Install  1 Package (+13 Dependent packages)

Total download size: 7.2 M
Installed size: 24 M
Is this ok [y/d/N]:

安裝完成

Installed:
  samba.x86_64 0:4.6.2-12.el7_4

Dependency Installed:
  avahi-libs.x86_64 0:0.6.31-17.el7         cups-libs.x86_64 1:1.6.3-29.el7      libldb.x86_64 0:1.1.29-1.el7              libtalloc.x86_64 0:2.1.9-1.el7
  libtdb.x86_64 0:1.3.12-2.el7              libtevent.x86_64 0:0.9.31-1.el7      libwbclient.x86_64 0:4.6.2-12.el7_4       pytalloc.x86_64 0:2.1.9-1.el7
  samba-client-libs.x86_64 0:4.6.2-12.el7_4 samba-common.noarch 0:4.6.2-12.el7_4 samba-common-libs.x86_64 0:4.6.2-12.el7_4 samba-common-tools.x86_64 0:4.6.2-12.el7_4
  samba-libs.x86_64 0:4.6.2-12.el7_4

Complete!

筆記: 排除 repo 文件中的包,否則下一次 yum 更新將安裝最新版本

要驗證其安裝,請鍵入:

rpm -qa | grep samba
samba-common-4.6.2-12.el7_4.noarch
samba-client-libs-4.6.2-12.el7_4.x86_64
samba-libs-4.6.2-12.el7_4.x86_64
samba-4.6.2-12.el7_4.x86_64
samba-common-libs-4.6.2-12.el7_4.x86_64
samba-common-tools-4.6.2-12.el7_4.x86_64

我們希望這篇文章對您有見地,並且您在系統中使用 Yum 安裝特定版本的軟件包時會更自在。 請隨時與我們聯繫並提出任何問題。 感謝您的時間。