Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
15
Help us understand the problem. What is going on with this article?
@yamada-hakase

AlmaLinuxを使ってみた(前編)

1. はじめに

2020年12月の「CentOSからCentOS Streamへ移行」アナウンス以降、周辺の動きが激しくなっている。

  • Rocky LinuxやAlmaLinuxなど、CentOSの後継を目指すプロジェクトの開発意向表明
  • Red Hat Developer Programの無料枠拡大
  • Oracle Linuxの積極的なプロモーション
  • 各種ベンダーのCentOS 8延長サポートサービス

このような状況のなか、AlmaLinuxの安定版が2021/03/30に正式リリースされた。そこで、AlmaLinuxを紹介すると共に、少しさわってみようと思う。

予定している内容は次のとおり。

  • AlmaLinuxとはどんなものなのか?
  • CentOSとの違いは?
  • ツールを使った移行
  • 出来や将来性は?

2. AlmaLinuxとは

AlmaLinuxとは、RHEL互換のLinux OSで、CentOS 8の後継を目指しているプロジェクトだ。CloudLinuxを中心としたコミュニティーが開発している。AlmaLinuxのトップページ冒頭には次のように書かれている。

Welcome to AlmaLinux OS, a new RHEL fork from the team at CloudLinux. A free Linux OS for the community, developed in close co-operation with the community.

また、次の3つのコンセプトが紹介されている。

  • In partnership with the community.
  • Matches the current RHEL release 1:1.
  • Always free, always open source.

CloudLinuxは有名ではないが、ホスティングサービス向けでは実績のあるLinux OSだ。日本でもGMOなどが提供するVPS(仮想専用サーバー)などで使われている。強力なリソース制限機能や隔離機能が特徴だ。なお、CloudLinuxもRHEL互換OSの一つである。

AlmaLinuxのトップページにはローンチイベントのYouTube動画が紹介されている。これを見ると、現時点でも相当のコミュニティーを築けていることが分かる。

  • AlmaLinux OSプロジェクトに対して、CloudLinux社は100万ドルのスポンサーシップをコミットメント
  • AlmaLinuxは、少なくとも2029年までサポートを保証(RHEL8と同様)

3. AlmaLinuxを使ってみよう

AlmaLinuxのおもな情報ソースは以下のとおり。

ISOイメージでインストールすることもできるし、移行ツールでCentOSやRHEL、Oracle Linuxから移行することもできる。それぞれについて調べてみよう。

3.1. ISOイメージからインストールする

今回はVirtualBoxでAlmaLinuxをインストールする。インストール手順はCentOSと同じなので手順は説明しないが、GUIインストーラーのAnacondaはAlmaLinux用に修正されている。GUIの修正は地味に面倒なので、素早い対応が感じられる。

使用したISOイメージ:AlmaLinux-8.3-x86_64-dvd.iso
almalinux_inst01.JPG
ロゴもAlmaLinuxになっている。
almalinux_inst02.JPG
インストールが完了したあとのデスクトップ画面。
almalinux_inst15.JPG

3.2. AlmaLinuxをさわってみる

インストールが終わったら、いくつか確認してみよう。

3.2.1. /etc/xxx-release

  1. /etc/almalinux-releaseが追加されている。
$ cat /etc/almalinux-release
AlmaLinux release 8.3 (Purple Manul)

2./etc/centos-releaseの内容も同じになっている。

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

3.同じになっている理由は、/etc/centos-releaseと/etc/redhat-releaseは共に/etc/almalinux-releaseを参照しているためである。

$ ls -l /etc/*release
-rw-r--r--. 1 root root 37 Mar 25 02:36 /etc/almalinux-release
lrwxrwxrwx. 1 root root 17 Mar 25 02:36 /etc/centos-release -> almalinux-release ★AlmaLinuxを参照
lrwxrwxrwx. 1 root root 21 Mar 25 02:36 /etc/os-release -> ../usr/lib/os-release
lrwxrwxrwx. 1 root root 17 Mar 25 02:36 /etc/redhat-release -> almalinux-release ★AlmaLinuxを参照
lrwxrwxrwx. 1 root root 17 Mar 25 02:36 /etc/system-release -> almalinux-release ★AlmaLinuxを参照

4.ブートメニューもAlmaLinuxになっている。

$ sudo grubby --info DEFAULT | grep AlmaLinux
title="AlmaLinux (4.18.0-240.15.1.el8_3.x86_64) 8.3 (Purple Manul)"

3.2.2. RPMパッケージ

CentOSと同じくRHEL互換なので基本的には同じハズだが、RPMパッケージがどのようになっているか確認する。

  1. kernelパッケージの情報は以下のとおり。
$ rpm -qi kernel
Name        : kernel
Version     : 4.18.0
Release     : 240.el8
Architecture: x86_64
Install Date: Tue Apr  6 02:30:34 2021
Group       : System Environment/Kernel
Size        : 0
License     : GPLv2 and Redistributable, no modification permitted
Signature   : RSA/SHA256, Fri Jan 15 13:14:07 2021, Key ID 51d6647ec21ad6ea
Source RPM  : kernel-4.18.0-240.el8.src.rpm
Build Date  : Fri Jan 15 05:12:50 2021
Build Host  : build.cloudlinux.com  ★cloudlinuxのサーバーでビルドしている
Relocations : (not relocatable)
Packager    : AlmaLinux Packaging Team <packager@almalinux.org>
Vendor      : AlmaLinux        ★VenderタグはAlmaLinux
URL         : http://www.kernel.org/
Summary     : The Linux kernel, based on version 4.18.0, heavily modified with backports
Description :
This is the package which provides the Linux kernel for AlmaLinux.
★省略

2.Venderタグは、RPMをビルドした会社や人を区別するのに利用できる。どのようなものがあるか調べるとAlmaLinuxとCloudLinuxの2種類で、約8割がCloudLinuxだった。

$ rpm -qa --qf '%{VENDOR}\n' | sort | uniq
AlmaLinux
CloudLinux

3.パッケージ名はRHEL/CentOSと同じだ。

$ rpm -qa | grep kernel-4
kernel-4.18.0-240.el8.x86_64
kernel-4.18.0-240.15.1.el8_3.x86_64

4.ただし、アーキテクチャ(x86_64)の前にalmaが付いているパッケージもある。

# rpm -qa | grep alma.x86 | sort
bluez-5.52-1.el8.alma.x86_64
bluez-libs-5.52-1.el8.alma.x86_64
bluez-obexd-5.52-1.el8.alma.x86_64
firefox-78.9.0-1.el8_3.alma.x86_64
fwupd-1.4.2-4.el8.alma.x86_64
grub2-pc-2.02-90.el8_3.1.alma.x86_64
grub2-tools-2.02-90.el8_3.1.alma.x86_64
grub2-tools-extra-2.02-90.el8_3.1.alma.x86_64
grub2-tools-minimal-2.02-90.el8_3.1.alma.x86_64
initial-setup-0.3.81.6-1.el8.alma.x86_64
initial-setup-gui-0.3.81.6-1.el8.alma.x86_64
libgcc-8.3.1-5.1.el8.alma.x86_64
libgomp-8.3.1-5.1.el8.alma.x86_64
libstdc++-8.3.1-5.1.el8.alma.x86_64
platform-python-3.6.8-31.el8.alma.x86_64
python3-libs-3.6.8-31.el8.alma.x86_64

5.changelogを見る限りは、軽微な独自パッチを適用しているものにalmaが付いているようだ。

$ rpm -q --changelog libgcc-8.3.1-5.1.el8.alma.x86_64 | head -n 5
* Wed Jan 20 2021 Sergey Fokin <sfokin@cloudlinux.com> 8.3.1-5.1.alma
- change bugurl to http://bugs.almalinux.org/

* Tue May 12 2020 Marek Polacek <polacek@redhat.com> 8.3.1-5.1
- consider negative edges in cycle detection (#1817991, PR gcov-profile/91601)

3.2.3. リポジトリ

  1. デフォルトで有効なリポジトリは以下のとおり。CentOSと同じである。
$ dnf repolist
repo id                          repo name
appstream                        AlmaLinux 8 - AppStream
baseos                           AlmaLinux 8 - BaseOS
extras                           AlmaLinux 8 - Extras
powertools                       AlmaLinux 8 - PowerTools

2.新しいパッケージがリリースされているか確認してみよう。むむっ、ミラーサイト! それは後ほど。

$ sudo dnf check-update
最速のミラーを確定しています (66 hosts)..     ] ---  B/s |   0  B     --:-- ETA

3.以下のアップデート可能なパッケージがリリースされている。

$ sudo dnf check-update
bpftool.x86_64                         4.18.0-240.15.1.el8_3           baseos
firefox.x86_64                         78.9.0-1.el8_3.alma             appstream
gnu-free-fonts-common.noarch           20120503-18.el8.0.1             appstream
gnu-free-mono-fonts.noarch             20120503-18.el8.0.1             appstream
gnu-free-sans-fonts.noarch             20120503-18.el8.0.1             appstream
gnu-free-serif-fonts.noarch            20120503-18.el8.0.1             appstream
kernel.x86_64                          4.18.0-240.15.1.el8_3           baseos
kernel-core.x86_64                     4.18.0-240.15.1.el8_3           baseos
kernel-modules.x86_64                  4.18.0-240.15.1.el8_3           baseos
kernel-tools.x86_64                    4.18.0-240.15.1.el8_3           baseos
kernel-tools-libs.x86_64               4.18.0-240.15.1.el8_3           baseos
openssl.x86_64                         1:1.1.1g-15.el8_3               baseos
openssl-libs.x86_64                    1:1.1.1g-15.el8_3               baseos
python3-perf.x86_64                    4.18.0-240.15.1.el8_3           baseos

4.アップデートするときは、次のコマンドでアップデートできる。しかし、調査の都合上ここではアップデートしない。

$ sudo dnf distro-sync

3.2.4. アップデート状況

CentOSとAlmaLinuxのアップデート状況を比較してみよう。

  1. このCentOS 8のVMでは、この時点で新しく提供されているパッケージはopensslだった。当然、もっとたくさんのパッケージをインストールしているときには、異なる可能性がある。
CentOS8で実行
$ sudo dnf check-update
openssl.x86_64                        1:1.1.1g-15.el8_3                   baseos
openssl-libs.x86_64                   1:1.1.1g-15.el8_3                   baseos

2.Buildtimeは「Mar 30 14:35:59 2021」になっている。

CentOS8で実行
$ sudo dnf -v info openssl-1.1.1g-15.el8_3
Available Packages
Name         : openssl
Epoch        : 1
Version      : 1.1.1g
Release      : 15.el8_3
Architecture : x86_64
Size         : 707 k
Source       : openssl-1.1.1g-15.el8_3.src.rpm
Repository   : baseos
Packager     : CentOS Buildsys <bugs@centos.org>
Buildtime    : Tue Mar 30 14:35:59 2021 ★
Summary      : Utilities from the general purpose cryptography library with TLS
             : implementation
URL          : http://www.openssl.org/
License      : OpenSSL and ASL 2.0
Description  : The OpenSSL toolkit provides support for secure communications
             : between machines. OpenSSL includes a certificate management tool
             : and shared libraries which provide various cryptographic
             : algorithms and protocols.

3.同様にAlmaLinuxでも調べてみよう。次のコマンドを実行すると、現在インストールされているopensslが1.1.1g-12.el8_3で、新しい1.1.1g-15.el8_3も提供されていることが分かる。

AlmaLinuxで実行
$ sudo dnf list openssl
Last metadata expiration check: 1:56:42 ago on Tue Apr  6 06:24:41 2021.
Installed Packages
openssl.x86_64                     1:1.1.1g-12.el8_3                     @baseos
Available Packages
openssl.x86_64                     1:1.1.1g-15.el8_3                     baseos

4.さらにBuildtimeを調べると「Mar 30 13:24:53 2021」で、CentOSよりも早い?

AlmaLinuxで実行
$sudo dnf -v info openssl-1.1.1g-15.el8_3
Available Packages
Name         : openssl
Epoch        : 1
Version      : 1.1.1g
Release      : 15.el8_3
Architecture : x86_64
Size         : 706 k
Source       : openssl-1.1.1g-15.el8_3.src.rpm
Repository   : baseos
Packager     : AlmaLinux Packaging Team <packager@almalinux.org>
Buildtime    : Tue Mar 30 13:24:53 2021 ★
Installed by : root <root>
Summary      : Utilities from the general purpose cryptography library with TLS
             : implementation
URL          : http://www.openssl.org/
License      : OpenSSL and ASL 2.0

5.各ディストリビューションを比較した結果は以下のとおり。時間が早い順に並べてみた。AlmaLinux優秀! すべてのパッケージを調べていないので、参考情報に過ぎないけれどね。

Linux OS Buildtime: openssl-1.1.1g-15.el8_3
Red Hat Enterprise Linux Fri Mar 26 01:51:51 2021
Oracle Linux Tue Mar 30 04:41:44 2021
AlmaLinux Tue Mar 30 13:24:53 2021
CentOS Tue Mar 30 14:35:59 2021

3.2.5. ミラーサイト

  1. ミラーサイトが気になったので調べてみる。ミラーサイトとはRPMパッケージのリポジトリを提供するサイトのことで、世界各地に分散配置することで高速化を図れる。
/etc/yum.repos.d/almalinux.repo
[baseos]
name=AlmaLinux $releasever - BaseOS
mirrorlist=https://mirrors.almalinux.org/mirrorlist/$releasever/baseos ★この行
# baseurl=https://repo.almalinux.org/almalinux/$releasever/BaseOS/$basearch/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-AlmaLinux
fastestmirror=1

2.現在のミラーサイトは$releasever8に置き換えた以下のコマンドで確認できる。

curl 'https://mirrors.almalinux.org/mirrorlist/8/baseos'
結果の一部
http://mirrors.ptisp.pt/almalinux/8/BaseOS/$basearch/os/
http://mirror.espoch.edu.ec/almalinux/8/BaseOS/$basearch/os/
http://mirror.dk.team.blue/almalinux/8/BaseOS/$basearch/os/
http://mirror.hosting.com.tr/almalinux/8/BaseOS/$basearch/os/
http://mirror-almalinux.grupocg.cl/almalinux/8/BaseOS/$basearch/os/

3.ミラーサイトの総数は現在66(2021/4/6)。ミラーサイトのクエリは、総数ではなく遅延が少ないサイトだけ表示されるケースもあるが、今回はほぼすべて表示されているようだ。

$ curl -s 'https://mirrors.almalinux.org/mirrorlist/8/baseos' | wc -l
66

4.日本国内は2サイトだと思ったら、AlmaLinux Mirrorsページを見ると5サイトあった。それに対してCentOSは日本国内8サイトだ(海外は相当ある)。高速なIIJがあるのはありがたいが、RIKENは無かった。

$ curl -s 'https://mirrors.almalinux.org/mirrorlist/8/baseos' | grep jp
http://ftp.iij.ad.jp/pub/linux/almalinux/8/BaseOS/$basearch/os/
http://mirror-jp.almalinux.id/almalinux/8/BaseOS/$basearch/os/

4. 前編まとめ

移行ツールも書こうと思ったが、長くなったので次回にする。とりあえず、ここまでのまとめは以下のとおり。

概要

  • AlmaLinuxはRHEL互換のLinux OSで、CentOSと同じ位置づけ
  • AlmaLinuxは、少なくとも2029年までサポートを保証(RHEL8と同等)
  • AlmaLinuxは、CloudLinux社のスポンサードを受けながらもコミュティドリブンで開発
  • 2021/03/30に正式安定版をリリース

機能

  • CentOSと、まったく同じように扱える。違うのは/etc/almalinux-releaseがあること
  • アップデートパッケージも十分早くリリースされている
  • 現時点(2021/04/06)で60以上のミラーサイトが用意され、日本でも5サイトある

続きは、こちら。

15
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
yamada-hakase
長らくOracleをやっていて、10gくらいまでは雑誌や書籍なども執筆。その後「オープンソース愛」のためスピンアウト。某Linuxディストリビューションの立ち上げに参加し、OSSを主体としたインフラ屋。近年はOracle CloudやAWS、Azureなどのクラウド屋。Linuxが好物。 なお、こちらに書いてあることは筆者自身の見解であり、所属企業の見解を反映したものではありません。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
15
Help us understand the problem. What is going on with this article?