我试用了AlmaLinux(后篇)

继前次

由于是从上一次继续的内容,所以给它标上以5开头的连续段落编号。

    AlmaLinuxを使ってみた(前編)

5. 使用迁移工具。

AlmaLinux提供了一个名为almalinux-deploy的迁移工具。使用该工具可以轻松地从现有的发行版迁移到AlmaLinux。需要注意的是,作为迁移源的发行版包括CentOS 8、RHEL 8和Oracle Linux 8。请详细参阅GitHub。

5.1. 运行迁移工具的步骤

请按照以下步骤进行操作。然而,您需要从原服务器访问互联网。

    1. 请下载升级脚本以将RHEL8.3以上版本更新。

 

    1. 执行迁移脚本。

 

    根据需要,修改库信息。

这次除了在从ISO镜像安装的CentOS 8上进行确认,还将在AWS、Azure、Oracle Cloud等公共云中进行CentOS 8的确认。之所以特意在公共云确认,是因为它经常与个性化的纯CentOS存在差异。

另外,在使用迁移工具时,请务必提前备份数据。

5.2. 移行工具的前期准备

我使用从ISO映像安装的CentOS 8.3来运行环境。

    检查当前的Linux操作系统版本。只需要确认是否为8.3或更高即可,如果是8.2或更早的版本,则需要进行更新(如果是8.2或更早的版本,脚本将被拒绝)。
$ cat /etc/centos-release
CentOS Linux release 8.3.2011
$ sudo dnf distro-sync -y

2. 下载迁移工具。

$ curl -O https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/master/almalinux-deploy.sh

3. 脚本(版本0.1.7)大约有400行,主要执行以下内容。

    • 移行元ディストリビューションのチェック

 

    • ディストリビューション固有のパッケージ削除

 

    • AlmaLinux固有のパッケージのインストール

 

    インストール済みパッケージのAlmaLinuxの置き換え
$ wc -l almalinux-deploy.sh
407 almalinux-deploy.sh

5.3. 运行迁移工具

执行脚本。执行时间取决于服务器性能、已安装的软件包数量和网络速度等因素。建议预计需要大约10到30分钟。

sudo bash almalinux-deploy.sh
Check root privileges                                                 OK
Check Secure Boot disabled                                            OK
Check centos-8.x86_64 is supported                                    OK
Download RPM-GPG-KEY-AlmaLinux                                        OK
Import RPM-GPG-KEY-AlmaLinux to RPM DB                                OK
Download almalinux-release package                                    OK
Verify almalinux-release package                                      OK
Remove centos-linux-release package                                   OK
Remove centos-gpg-keys package                                        OK
Remove centos-linux-repos package                                     OK
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...
   1:almalinux-release-8.3-4.el8      ################################# [100%]
Install almalinux-release package                                     OK
Remove centos-logos package                                           OK
Install almalinux-logos package                                       OK

安装完成后,将以以下方式显示。它可能与GitHub的描述不同,但可能会根据脚本版本而有所变化。

Complete!
Run dnf distro-sync -y                                                OK
Migration to AlmaLinux is completed

再启动不是必需的,但在迁移之前或之后,如果核心软件包如kernel、glibc、openssl等的版本发生变化,将需要重新启动。到此为止。

sudo systemctl reboot

5.4. 迁移后的确认

当移行完成后,请确认变更部分。

    /etc/ *-release的内容已经更改为“AlmaLinux”。
$ cat /etc/almalinux-release
AlmaLinux release 8.3 (Purple Manul)

$ cat /etc/centos-release
AlmaLinux release 8.3 (Purple Manul)

2. 所有的存储库都已变更为 AlmaLinux。

$ dnf repolist
repo id                          repo name
appstream                        AlmaLinux 8 - AppStream
baseos                           AlmaLinux 8 - BaseOS
extras                           AlmaLinux 8 - Extras
powertools                       AlmaLinux 8 - PowerTools
$ dnf repolist all
repo id                        repo name                                status
appstream                      AlmaLinux 8 - AppStream                  enabled
appstream-debuginfo            AlmaLinux 8 - AppStream debuginfo        disabled
appstream-source               AlmaLinux 8 - AppStream Source           disabled
baseos                         AlmaLinux 8 - BaseOS                     enabled
baseos-debuginfo               AlmaLinux 8 - BaseOS debuginfo           disabled
baseos-source                  AlmaLinux 8 - BaseOS Source              disabled
extras                         AlmaLinux 8 - Extras                     enabled
extras-debuginfo               AlmaLinux 8 - Extras debuginfo           disabled
extras-source                  AlmaLinux 8 - Extras Source              disabled
ha                             AlmaLinux 8 - HighAvailability           disabled
ha-debuginfo                   AlmaLinux 8 - HighAvailability debuginfo disabled
ha-source                      AlmaLinux 8 - HighAvailability Source    disabled
powertools                     AlmaLinux 8 - PowerTools                 enabled
powertools-debuginfo           AlmaLinux 8 - PowerTools debuginfo       disabled
powertools-source              AlmaLinux 8 - PowerTools Source          disabled
$ ls /etc/yum.repos.d/
almalinux-ha.repo almalinux.repo

5.5. 在公共云上的迁移

接下来,我将介绍在AWS、Azure和Oracle Cloud等公共云中运行的CentOS 8的结果。请注意,我正在确认以下两点。

    • 移行ツールで移行できたか

 

    移行後に修正すべき箇所はあるか

5.5.1. AWS中国区的CentOS 8版本

在AWS上,有许多CentOS 8的AMI已经注册了。这次我们使用了CentOS官方的AMI(CentOS Official AMI信息)。

keyvalueRegionap-northeast-1AMI NameCentOS 8.3.2011 x86_64AMI IDami-0d9bf167cb68ac889

移行结果
顺利完成了迁移,没有任何问题。

    • 移行ツールで移行できたか:できた

 

    移行後に修正すべき箇所はあるか:ない

在转换后,要确认是否还保留了现有的RPM软件包。

    显示正在使用的供应商标签列表。除了AlmaLinux和CloudLinux之外,还有CentOS和(无)这些例子。
$ rpm -qa --qf '%{VENDOR}\n' | sort | uniq
AlmaLinux
CentOS
CloudLinux
(none)

2. 展示供应商标签除了显示AlmaLinux和CloudLinux之外的软件包。根据这个看,只有旧内核和GPG KEY。也就是说,当前使用的所有软件包都已被替换为AlmaLinux。

$ rpm -qa --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{VENDOR}\n' | grep -v AlmaLinux | grep -v CloudLinux
gpg-pubkey-3abb34f8-5ffd890e    (none)
kernel-core-4.18.0-240.1.1.el8_3        CentOS
kernel-modules-4.18.0-240.1.1.el8_3     CentOS
kernel-4.18.0-240.1.1.el8_3     CentOS

5.5.2. Azure上的CentOS 8

Azure和AWS一样,提供了许多CentOS 8镜像。因此我选择了使用OpenLogic的虚拟机镜像。

顺利完成了迁移,但需要修正存储库信息。

    • 移行ツールで移行できたか:できた

 

    移行後に修正すべき箇所はあるか:ある

移行后查看存储库时,因存在OpenLogic的存储库而导致以下错误。

$ sudo dnf repolist

errors during downloading metadata for repository 'AppStream-openlogic':
  - Status code: 404 for http://olcentgbl.trafficmanager.net/almalinux/8/AppStream/x86_64/os/repodata/repomd.xml (IP: 138.91.1.67)
Error: Failed to download metadata for repo 'AppStream-openlogic': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
CentOS-8 - Base (OpenLogic)    
$ sudo dnf repolist
repo id                       repo name
AppStream-openlogic           CentOS-8 - AppStream (OpenLogic)
BaseOS-openlogic              CentOS-8 - Base (OpenLogic)
appstream                     AlmaLinux 8 - AppStream
baseos                        AlmaLinux 8 - BaseOS
extras                        AlmaLinux 8 - Extras
extras-openlogic              CentOS-8 - Extras (OpenLogic)
openlogic                     CentOS-8 - OpenLogic packages for x86_64
powertools                    AlmaLinux 8 - PowerTools

只需要一种翻译选项:

要禁用OpenLogic存储库,请执行以下命令进行修正。

sudo dnf config-manager --disable AppStream-openlogic BaseOS-openlogic extras-openlogic openlogic

如果设置为无效,可以无错误地执行dnf。

$ sudo dnf repolist
repo id                  repo name
appstream                AlmaLinux 8 - AppStream
baseos                   AlmaLinux 8 - BaseOS
extras                   AlmaLinux 8 - Extras
powertools               AlmaLinux 8 - PowerTools

禁用repo文件的方法也包括将其重命名。由于绝对不使用OpenLogic的存储库,因此可以说这种方法更可靠。

在/etc/yum.repos.d/目录下存在以下有效的repo文件。

$ ls /etc/yum.repos.d/*repo
/etc/yum.repos.d/almalinux-ha.repo  /etc/yum.repos.d/OpenLogicCentOS.repo
/etc/yum.repos.d/almalinux.repo     /etc/yum.repos.d/OpenLogic.repo

将OpenLogic的repo文件改名。

$ sudo rename repo repo.bak /etc/yum.repos.d/OpenLogic*

确认后,发现具有”.bak”扩展名并且已被禁用。

$ ls /etc/yum.repos.d/OpenLogic*
/etc/yum.repos.d/OpenLogicCentOS.repo.bak  /etc/yum.repos.d/OpenLogic.repo.bak

5.5.3. Oracle Cloud的CentOS 8

在Oracle云基础设施中,使用了由Oracle提供的CentOS 8。

移行的结果
顺利完成了移行,没有任何问题。

    • 移行ツールで移行できたか:できた

 

    移行後に修正すべき箇所はあるか:ない

当查看存储库时,会显示“加载插件失败”的消息。这与迁移无关,是Oracle Cloud的CentOS镜像的问题,可以忽略。

$ dnf repolist
Failed loading plugin "osmsplugin": No module named 'librepo'
repo id                          repo name
appstream                        AlmaLinux 8 - AppStream
baseos                           AlmaLinux 8 - BaseOS
extras                           AlmaLinux 8 - Extras
powertools                       AlmaLinux 8 - PowerTools

6. 综上所述

AlmaLinux概述

    • AlmaLinuxはRHEL互換のLinux OSで、CentOSと同じ位置づけ

 

    • AlmaLinuxは、少なくとも2029年までサポートを保証(RHEL8と同等)

 

    • AlmaLinuxは、CloudLinux社のスポンサードを受けながらもコミュティードリブンで開発

 

    2021/03/30に正式安定版をリリース

AlmaLinux的功能

    • CentOSと、まったく同じように扱える。違うのは/etc/almalinux-releaseがあること

 

    • アップデートパッケージも十分早くリリースされている

 

    現時点(2021/04/06)で60以上のミラーサイトが用意され、日本でも5サイトある

迁移到AlmaLinux

    • 移行ツールを利用するとCentOS 8からAlmaLinuxへ簡単に移行できる

 

    • パブリック・クラウドのCentOS 8もAlmaLinuxに移行できる

 

    移行ツールの前提条件として、インターネットへのアクセスが可能なことと、CentOS 8.3以上の必要がある(※1)

※1. 考虑到CentOS广泛应用于企业,有可能无法联网,即使能够联网也可能需要提交白名单申请。如果两者都不可行,可以稍作修改并建立本地仓库,看起来是可行的。由于没有经验,可能会比较麻烦,但对于大量设备的选择来说是可能的。

7. 综述

迄今为止,我已经两次对 AlmaLinux 进行了评估。考虑到 CentOS 到 CentOS Stream 的宣布意图,AlmaLinux 在短短4个月内完成得很出色。不仅仅是产品本身,还包括构建起完善的支持体系,如社区等。这必定归功于 CloudLinux 的踊跃协作。

在作为CentOS继任者的新项目中,感觉已经取得了一定的领先地位。

嗯,尽管未来社群可能会瓦解,也有可能会有贡献者转身离开,但这种可能性无法完全排除。

如果对未来的转移目标有兴趣的话,请参阅我写的另一篇文章。

    CentOS 8の移行先を考える
广告
将在 10 秒后关闭
bannerAds