初めに #
AlmaLinux をはじめとする RHEL 互換ディストリビューションでは、標準リポジトリに含まれない追加パッケージを利用したい場面が多くあります。
もちろん、GitHubなどに公開されているソースコードからビルドして導入することも可能ですが、依存関係の解決やビルド作業には膨大な時間と管理コストが伴います。
こうした場面で有用なのが EPEL(Extra Packages for Enterprise Linux)リポジトリです。
EPEL リポジトリを有効化することで、AlmaLinux 標準では提供されていない各種ソフトウェアや最新機能を安全に利用できるようになります。
当サイトにおいても、これまでに EPEL リポジトリを利用した AlmaLinux 環境の構築・設定方法を多数紹介してきました。
- AlmaLinux 10 に ImageMagick 7 をインストールする方法
- ClamAV を用いた自動ウイルススキャンの設定方法
- ModSecurity + OWASP CRS を利用した WAF 構築(AlmaLinux 10)
- Knot DNS を用いた権威 DNS サーバー構築(AlmaLinux 10)
本記事では、AlmaLinux 環境において EPEL リポジトリを有効化する方法について、初心者の方にも分かりやすく解説します。
EPELとは #
EPEL は、RHELおよびその互換ディストリビューション向けに提供されている、Enterprise Linux 向けの追加パッケージリポジトリです。
EPEL は、RHEL のアップストリームである Fedora プロジェクトによって管理・運用されており、公式リポジトリを補完する準公式的な位置づけのリポジトリとして、業界でも広く利用されています。
EPEL リポジトリで提供されているパッケージは、世界各地に配置された多数のミラーサーバーを通じて配信されています。
これにより、利用者は地理的に近いミラーからパッケージを取得でき、通信遅延の低減や安定したダウンロードが可能となっています。
より詳細な情報については、以下の公式ドキュメントをご参照ください。
EPELリポジトリの有効化方法 #
EPEL リポジトリは、標準リポジトリには含まれていないため、手動で導入する必要があります。
本記事では AlmaLinux 10 を例としていますが、他の RHEL 系ディストリビューションでも同様の手順で導入が可能となっています。
事前準備 #
初めにリポジトリの有効・無効を管理するためのパッケージを導入してください。
dnf install -y dnf-plugins-core
なお、利用する環境によっては本パッケージが標準で導入されている場合があります。
その場合は、追加でインストールする必要はありません。
また、EPEL のパッケージの中には、CRB リポジトリに含まれる開発ツール等に依存しているものが多数あります。
そのため、あらかじめ CRB リポジトリも有効化しておくことを推奨します。
dnf config-manager --set-enabled crb
EPELの有効化 #
続いて、以下のコマンドを実行し EPEL リポジトリを導入してください。
dnf install -y epel-release
インストールが完了すると、次のメッセージが表示されます。
Complete!
インストールにより EPEL リポジトリの設定ファイルが、/etc/yum.repos.d/ ディレクトリ配下に配置されます。
/etc/yum.repos.d/epel.repo
/etc/yum.repos.d/epel-testing.repo
これらは DNF が参照するリポジトリ定義ファイルとなっておりリポジトリの有効・無効の切り替えや、接続先ミラー、各種オプションの設定が記述されています。
より詳細な制御を行いたい場合には、これらのファイルを確認・編集することで挙動を調整することが可能となっています。
以上で EPEL リポジトリ導入は完了となります。
GPG キーのインポートについて #
EPEL リポジトリを初めて利用する場合、パッケージの正当性を確認するための GPG キーのインポート確認が表示されます。
Importing GPG key 0xE37ED158:
Userid : "Fedora (epel10) <epel@fedoraproject.org>"
Fingerprint: 7D8D 15CB FC4E 6268 8591 FB26 33D9 8517 E37E D158
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-10
Is this ok [y/N]:
この確認は、EPEL リポジトリを利用して初めてパッケージをインストールする際に表示されます。
表示された内容を確認し、問題がなければ y を入力して続行してください。
有効化したリポジトリ一覧の確認方法 #
現在、有効化されているリポジトリの一覧は、以下のコマンドで確認できます。
dnf repolist
実行すると、以下の例のように有効なリポジトリのみが一覧で表示されます。
$ dnf repolist
repo id repo name
appstream AlmaLinux 10 - AppStream
baseos AlmaLinux 10 - BaseOS
crb AlmaLinux 10 - CRB
epel Extra Packages for Enterprise Linux 10 - x86_64
extras AlmaLinux 10 - Extras
EPELリポジトリの無効化方法 #
一時的な無効化 #
EPEL リポジトリを一時的に無効化したい場合は、以下のコマンドを実行してください。
dnf config-manager --disable epel
この操作により、EPEL リポジトリは一時的に無効化されますが、設定自体は保持されるため、必要に応じて再度有効化することが可能です。
再度有効化する場合は、以下のコマンドを実行してください。
dnf config-manager --enable epel
完全な削除 #
EPEL リポジトリを完全に削除したい場合は、epel-release パッケージを削除する必要があります。
削除を実施するには以下のコマンドを実行してください。
dnf remove -y epel-release
この操作により、リポジトリの設定ファイル自体が削除され、以後 EPEL リポジトリは利用できなくなります。
なお、本操作はリポジトリの削除のみを行うものであり、EPEL 経由でインストールされたパッケージが削除されることはありません。
パッケージがどのリポジトリから導入したか確認する方法 #
インストール済みのパッケージが、どのリポジトリから導入されたものかを確認したい場合には、以下のコマンドを使用します。
dnf list installed パッケージ名
このコマンドを実行すると、指定したパッケージの情報とあわせて、導入元のリポジトリが表示されます。
今回は例として、ImageMagick パッケージがどのリポジトリからインストールされたかを確認してみます。
dnf list installed ImageMagick
上記コマンドを実行した場合の出力例は以下のとおりです。
Installed Packages
ImageMagick.x86_64 1:7.1.1.47-1.el10_1 @epel
左から順に「パッケージ名(アーキテクチャ)」「バージョン情報」「導入元リポジトリ」が表示されています。
今回は @epel となっており、これは EPEL リポジトリからインストールされたことを示しています。
複数のリポジトリを併用している環境では、パッケージの導入元を把握しておくことで、アップデート時の挙動確認やトラブルシューティングを行いやすくなります。
まとめ #
本記事では、AlmaLinux における EPEL リポジトリの有効化方法を解説しました。
EPEL を利用することで、標準リポジトリには含まれない追加パッケージを安全かつ簡単に導入できます。
AlmaLinux 環境を構築・運用するうえで、ぜひ活用してみてください。