現在位置: ホーム / みらくるブログ / 新たなCentOS オルタナティブなディストリビューション Rocky Linuxとは?

新たなCentOS オルタナティブなディストリビューション Rocky Linuxとは?

Rocky Linuxとは CentOS Projectの方向転換に伴って新しく立ち上げられた、Red Hat Enterprise Linux をベースにしたダウンストリームのフォークディストリビューションです。CentOS Linuxとの違いやRocky Linuxのリリース状況などを解説します。

Rocky Linux とは?

Rocky Linuxとは CentOS Projectの方向転換に伴って新しく立ち上げられた、Red Hat Enterprise Linux をベースにしたダウンストリームのフォークディストリビューションです。CentOS Project 及びCentOS Projectの前身である、Caos Linux の創始者であるGregory Kurtzer氏によって立ち上げられました。Rocky の名前はCentOS Project の共同創始者であるRocky McGough氏の名前にちなんでいます。

CentOS Projectの歴史

「Red Hat Enterprise Linux 」よりも前に、2000年代前半には「Red Hat Linux」というディストリビューションが存在しました。2001年、Red Hat社は
無償で利用できる「Red Hat Linux」から有償のサブスクリプションが必要な「Red Hat Enterprise Linux」へ開発やビジネスの方向転換を行いました。[1]
この「Red Hat Linux」の終了をきっかけとして、CentOS Project の 前身となる cAos Linux Project がスタートしました。当時、雇用主のために すでにRHELをリビルドしていた Rocky McGoughd氏がGregory Kurtzer氏と一緒に cAos Linux Projectを創立し、その後 Tao Linux などの他のリビルドプロジェクトも CentOS Project へ合流しました。[2]

 

CentOS Linux以外のフォーク

その一方、2000年代に存在したRHELのダウンストリームプロジェクトのすべてがCentOS Projectに合流したわけでもなく、独自にリリースを行うプロジェクトも存在しました。2000年代に作られたディストリビューションとしては、White Box Enterprise Linux や Scientific Linux、Oracle が開発するOracle Linux などがその一例です。
独立してプロジェクトを保守することには、独自に修正・変更やリリースを行えるメリットが存在します。

前述したプロジェクトの中では、White Box Enterprise Linux は 2007年でリリースが最後になっており、プロジェクトが事実上終了しています。
またScientific Linux は 2019年に EL8系のリリースを行わないことをメーリングリストで宣言しており、プロジェクトはクロージングの段階に入っています。

Rocky Linuxのリリース状況

Rocky Linux Project は 昨年12月にプロジェクトが発足した後、5月1日に 8.3RCをリリース、その後 8.3の正式版のリリースをスキップし、6月4日に8.4RC、6月21日に8.4をリリースしました。[3]
将来的なリリースに関する公的なアナウンスはありませんが、コミュニティが存続するあいだはRed Hat Enterprise Linuix に追随してリリースが行われると思われます。

CentOS Linuxとの違い

  • リリースされた 8.4 の ISO に収録されたRPMを調べたところ、おおよそ RHEL 8.4 や CentOS 8.4 とほぼ一致したバージョンのパッケージが含まれています。
    ただし、パッケージによってはパッケージバージョンに含まれるdistタグなどが、微妙に異なるため完全に一致することを必要とするケースではソフトウェアが意図した挙動をしない可能性があります。[4]
  • また AppStream に含まれる module パッケージはリビルドが行われているため、コンテキストやビルドバージョンが異なります。[5]
  • またサードパーティ製アプリケーションを利用したい場合、Rocky Linux は新興プロジェクトであるためベンダーからサーティファイが得られるかはかなり不明確です。
  • SecureBoot が8.4では未対応で、現在対応のために作業中です。
  • CentOS向けにビルドされた実行バイナリ(及び実行バイナリが呼び出す共有ライブラリ)が他のディストリビューションでABI互換性を持つか調べたい場合は libabigail パッケージ[6] が提供する、abidiff や abicompat といったユーティリティを使うと検証可能です。

プロジェクトの運営方針

  • コミュニティ憲章が存在します。[7]
  • 商標やブランドの保護のために、法人としてRocky Enterprise Software Foundation という名前でデラウェア州にPublic Benefit Corporation が創設されており、プロジェクト創始者である Gregory Kurtzer氏が所有しています。
    • フォーラムにおける公開質問において、Caos Foundation が過去に非営利団体だったとき、外部から操作を受けた経験があるため、この形態をとっていると回答しています。 [8]
  • スポンサー
    • 企業などからのスポンサーを受け付けています、しかしフォーラムの動向を読む限りプロジェクトは顧問委員会(Advisory board)などによって民主的に運営がされるでしょうし、スポンサーやパートナーは開発方針に影響を及ぼすことはできません。[9] そのため今後のプロジェクトの方向性がビジネスの都合と一致するかはわかりません。この点は企業が主導してメンテナンスするプロジェクトとは異なるでしょう。

 

注釈

[1]: https://www.redhat.com/ja/about/brand/standards/history
[2]: https://blog.centos.org/2019/03/greg-kurtzer-centos-founder/
[3]: https://rockylinux.org/news/1/
[4]: インストールされているパッケージに対して脆弱性検査を行う場合、カーネルモジュールを含むサードパーティ製アプリケーションがインストール時にカーネルのバージョンチェックを行う場合などが典型例です。
[5]: module パッケージでは、ビルドされたパッケージのビルド環境の情報がコンテキストやビルドバージョンとしてメタデータに格納されています。
例えば postgresql-10.17-1.module+el8.4.0+548+9eccbe3f.x86_64.rpm というファイル名なら、’9eccbe3f’ がコンテキスト、’548’ がビルドバージョンです。

コンテキストやビルドバージョンの不一致はCentOS Linux でも同様で、RHEL とは一致していませんでした。
参考資料: NSVCA vs NEVRA :: Fedora Docs:
https://docs.fedoraproject.org/en-US/modularity/architecture/nsvca/
[6]: https://sourceware.org/libabigail/
How to check for ABI changes with abidiff: https://fedoraproject.org/wiki/How_to_check_for_ABI_changes_with_abidiff
[7]: https://rockylinux.org/community-charter/
[8]: https://forums.rockylinux.org/t/community-update-june-2021/3260/4
[9]: https://forums.rockylinux.org/t/community-update-february-2021/1934/8

更新履歴

2021 年 07 月 21 日 運営方針について解説を修正
2021 年 07 月 21 日 初稿

CentOS, Red Hat Enterprise Linux はRed Hat, Inc.の登録商標または商標です。その他会社名及びロゴ、製品名、プロジェクト名などは該当する会社・法人の登録商標または商標です。


Author: サイバートラスト株式会社 OSS・IoT事業部 Linuxエバンジェリスト・シニアエンジニア 弦本 春樹(Haruki TSURUMOTO)