CentOS Stream9のリポジトリ―の概要と確認方法、モジュールの概要と確認方法についてまとめました。
※目次をクリックすると目次の下部にコンテンツが表示されます。
主なリポジトリ―
1)RHELのコンテンツ配布
・Red Hat Enterprise Linux (RHEL) は、以下に示すようなリポジトリーを通じてコンテンツを配布する。
2)主なリポジトリ―
①BaseOS
・すべてのインストールの基盤を提供する、基礎となるOS機能のコアセットで構成。
・コンテンツの提供:RPM形式
・デフォルトで有効
・主なパッケージ:bash、firewalld、kernel、NetworkManager、openssh、openssl、systemd
②AppStream(Application Streams)
・ユーザー空間アプリ、ランタイム言語、データベースなど。
・一つのパッケージにつき複数のバージョンを提供。
・コアOSシステムパッケージよりも頻繁に更新される。
・コンテンツの提供:RPM形式、モジュール、Software Collections
・デフォルトで有効
・主なパッケージ:gcc、httpd、mysql
③CRB(CodeReady Linux Builder)
・開発者向けの追加パッケージを提供。
・デフォルトで無効
・パッケージの例:mysql-devel、mysql-test
・Red Hat Enterprise Linux (RHEL) は、以下に示すようなリポジトリーを通じてコンテンツを配布する。
2)主なリポジトリ―
①BaseOS
・すべてのインストールの基盤を提供する、基礎となるOS機能のコアセットで構成。
・コンテンツの提供:RPM形式
・デフォルトで有効
・主なパッケージ:bash、firewalld、kernel、NetworkManager、openssh、openssl、systemd
②AppStream(Application Streams)
・ユーザー空間アプリ、ランタイム言語、データベースなど。
・一つのパッケージにつき複数のバージョンを提供。
・コアOSシステムパッケージよりも頻繁に更新される。
・コンテンツの提供:RPM形式、モジュール、Software Collections
・デフォルトで有効
・主なパッケージ:gcc、httpd、mysql
③CRB(CodeReady Linux Builder)
・開発者向けの追加パッケージを提供。
・デフォルトで無効
・パッケージの例:mysql-devel、mysql-test
リポジトリ―の確認例
●システムで有効になっているすべてのリポジトリーをリスト表示
# dnf repolist repo id repo の名前 appstream CentOS Stream 9 - AppStream baseos CentOS Stream 9 - BaseOS extras-common CentOS Stream 9 - Extras packages
●無効になっているリポジトリ―のリストを表示
# dnf repolist --disabled repo id repo の名前 appstream-debuginfo CentOS Stream 9 - AppStream - Debug appstream-source CentOS Stream 9 - AppStream - Source baseos-debuginfo CentOS Stream 9 - BaseOS - Debug baseos-source CentOS Stream 9 - BaseOS - Source crb CentOS Stream 9 - CRB crb-debuginfo CentOS Stream 9 - CRB - Debug crb-source CentOS Stream 9 - CRB - Source
●リポジトリーの追加情報を表示
# dnf repoinfo appstream Repo-id : appstream Repo-name : CentOS Stream 9 - AppStream Repo-status : 有効化 Repo-revision : 9-stream Repo-distro-tags : [cpe:/o:centos-stream:centos-stream:9]: , , 9, C, O, S, S, a, e, e, m, n, r, t, t Repo-updated : 2023年12月12日 03時45分27秒 Repo-pkgs : 15,814 Repo-available-pkgs: 15,435 Repo-size : 30 G Repo-metalink : https://mirrors.centos.org/metalink?repo=centos-appstream-9-stream&arch=x86_64&protocol=https,http Updated : 2023年12月16日 08時34分30秒 Repo-baseurl : http://mirror.team-cymru.com/centos-stream/9-stream/AppStream/x86_64/os/ (36 more) Repo-expire : 21,600 秒 (最終: 2023年12月16日 08時34分30秒) Repo-filename : /etc/yum.repos.d/centos.repo 総パッケージ: 15,814
モジュールの概要
1)モジュールとは
・モジュールはコンポーネントを表し、通常はまとめてインストールされる一連のRPMパッケージ。
〇モジュールに含まれる一般的なパッケージタイプ
・アプリケーションを含むパッケージ。
・アプリケーション固有の依存関係ライブラリーを含むパッケージ
・アプリケーションのドキュメントを含むパッケージ
・ヘルプユーティリティーを含むパッケージ
2)モジュールストリーム
●モジュールストリームとは
・AppStreamコンポーネントのバージョンを示す数値。
・各ストリームの更新はストリーム毎に管理されており、他のモジュールストリームに依存している場合がある。
●モジュールストリームのアクティブ/非アクティブ
・モジュールストリームは、アクティブまたは非アクティブにできる。
・アクティブなストリームでは、システムは特定のモジュールストリーム内のRPMパッケージにアクセスできるようになり、それぞれのコンポーネントバージョンをインストールできるようになる。
・あるモジュールの中で同時にアクティブにできるストリームは 1 つだけで、利用できるのは特定のストリームのパッケージ。
3)モジュールプロファイル
・モジュールプロファイルは、サーバー、クライアント、開発、最小インストールなど、特定のユースケースでまとめてインストールされる推奨パッケージのリストで、プロファイルを利用して、開発フェーズや用途に応じてパッケージのインストールを行える。
・同じモジュールストリームから複数のプロファイルを利用してパッケージをインストールすることも、特に準備などを行わずに行える。
●プロファイルの例
・common(d):実稼働環境に対応したパッケージ。デフォルトのプロファイル。
・development:開発ヘッダーを含む、実稼働環境に対応したパッケージ。
・minimal:ランタイム環境を提供するパッケージの最小セット。
・Source-to-Image(S2I):Linux コンテナーの作成に必要なパッケージ。
・モジュールはコンポーネントを表し、通常はまとめてインストールされる一連のRPMパッケージ。
〇モジュールに含まれる一般的なパッケージタイプ
・アプリケーションを含むパッケージ。
・アプリケーション固有の依存関係ライブラリーを含むパッケージ
・アプリケーションのドキュメントを含むパッケージ
・ヘルプユーティリティーを含むパッケージ
2)モジュールストリーム
●モジュールストリームとは
・AppStreamコンポーネントのバージョンを示す数値。
・各ストリームの更新はストリーム毎に管理されており、他のモジュールストリームに依存している場合がある。
●モジュールストリームのアクティブ/非アクティブ
・モジュールストリームは、アクティブまたは非アクティブにできる。
・アクティブなストリームでは、システムは特定のモジュールストリーム内のRPMパッケージにアクセスできるようになり、それぞれのコンポーネントバージョンをインストールできるようになる。
・あるモジュールの中で同時にアクティブにできるストリームは 1 つだけで、利用できるのは特定のストリームのパッケージ。
3)モジュールプロファイル
・モジュールプロファイルは、サーバー、クライアント、開発、最小インストールなど、特定のユースケースでまとめてインストールされる推奨パッケージのリストで、プロファイルを利用して、開発フェーズや用途に応じてパッケージのインストールを行える。
・同じモジュールストリームから複数のプロファイルを利用してパッケージをインストールすることも、特に準備などを行わずに行える。
●プロファイルの例
・common(d):実稼働環境に対応したパッケージ。デフォルトのプロファイル。
・development:開発ヘッダーを含む、実稼働環境に対応したパッケージ。
・minimal:ランタイム環境を提供するパッケージの最小セット。
・Source-to-Image(S2I):Linux コンテナーの作成に必要なパッケージ。
モジュールの確認例
●利用可能なすべてのモジュールをリスト
# dnf module list CentOS Stream 9 - AppStream Name Stream Profiles Summary maven 3.8 common [d] Java project management and project comprehension tool nginx 1.22 common [d] nginx webserver nodejs 18 common [d], develop Javascript runtime ment, minimal, s2i nodejs 20 common [d], develop Javascript runtime ment, minimal, s2i php 8.1 common [d], devel, PHP scripting language minimal postgresql 15 client, server [d] PostgreSQL server and client module postgresql 16 client, server [d] PostgreSQL server and client module redis 7 common [d] Redis persistent key-value database ruby 3.1 common [d] An interpreter of object-oriented sc ripting language
●特定のモジュールの詳細を表示
# dnf module info nodejs Name : nodejs Stream : 18 : : Profiles : common [d], development, minimal, s2i Default profiles : common Repo : appstream Summary : Javascript runtime : : Artifacts : nodejs-1:18.7.0-1.module_el9+236+76754d90.src : nodejs-1:18.7.0-1.module_el9+236+76754d90.x86_64 : nodejs-debuginfo-1:18.7.0-1.module_el9+236+76754d90.x86_64 : nodejs-debugsource-1:18.7.0-1.module_el9+236+76754d90.x86_64 : nodejs-devel-1:18.7.0-1.module_el9+236+76754d90.x86_64 : nodejs-docs-1:18.7.0-1.module_el9+236+76754d90.noarch : nodejs-full-i18n-1:18.7.0-1.module_el9+236+76754d90.x86_64 : nodejs-nodemon-0:2.0.7-1.module_el9+229+8985b174.noarch : nodejs-nodemon-0:2.0.7-1.module_el9+229+8985b174.src : nodejs-packaging-0:2021.06-4.module_el9+229+8985b174.noarch : nodejs-packaging-0:2021.06-4.module_el9+229+8985b174.src : nodejs-packaging-bundler-0:2021.06-4.module_el9+229+8985b174.noarch : npm-1:8.15.0-1.18.7.0.1.module_el9+236+76754d90.x86_64
●各モジュールプロファイルがインストールするパッケージをリスト
# dnf module info --profile nodejs Name : nodejs:18:920220808155010:rhel9:x86_64 common : nodejs : npm development : nodejs : nodejs-devel : npm minimal : nodejs s2i : nodejs : nodejs-nodemon : npm