RockyLinux9でEPELリポジトリを有効化する

CentOS系のOSではおなじみのEPELリポジトリをRockyLinux9で有効化してみる。 基本的な手順はCentOS8以前と同じだが、一部気をつけるべき点も存在する。

なお、今回用いた環境は以下。

  • OS: RockyLinux9.1
  • Arch: x86_64

OSのアップデート

RockyLinux9は基本的にRHEL9準拠なので、yumの代わりにdnfが標準となっている。 といっても、基本的なコマンド体系はyumに非常に近いので迷うことは少ないだろう。

EPELを入れるのに先立って、以下のコマンドでシステムの全パッケージをアップグレードしておく。

1$ sudo dnf upgrade
dnf updateとdnf upgradeの違い

自分は今までCentOS系でパッケージを更新するときにはyum updateを使っていたのだが、ドキュメントにはupgradeが記載されていたため今回はこちらを用いた。 調べてみたところ、dnf updatednf upgradeの完全なエイリアスであり機能に違いはないらしい。 (yumの場合、yum upgradeyum --obsoletes updateの意味だったため違いがあった) また、dnfの場合はupgradeが推奨されているそうだ。

参考: Update and Upgrade Commands are the Same - Changes in DNF CLI compared to YUM

CRBの有効化

今までになかった手順なのだが、EPELリポジトリを使用する際はCodeReady Linux Builder(CRB)リポジトリの有効化が推奨されている。 CRBリポジトリとは簡単に言うと「〇〇-devel」系のビルド用のパッケージが含まれるリポジトリであり、 EPELに含まれるパッケージの中にはCRBに依存しているものが結構あるので、有効化しておいたほうがいいということらしい。

CRBは以下のコマンドにより有効化できる。

1$ sudo dnf config-manager --set-enabled crb

EPELの有効化

いよいよEPELリポジトリを有効化する。例によってfedoraprojectのrpmファイルを直接インストールする。

1$ sudo dnf install \
2    https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm \
3    https://dl.fedoraproject.org/pub/epel/epel-next-release-latest-9.noarch.rpm

あとはプロンプトに従ってインストールを続行すれば完了である。

EPEL9で提供されるパッケージについて

CentOS7時代だと、標準リポジトリは割と必需品的なパッケージでも入っていないことがよくあったし、 入っていてもバージョンが著しく古いみたいなことが多く、 それを補う存在としてEPELは実質的に必需品のような存在であった。 ところが、RHEL9になって標準リポジトリも随分時代に追いついてきたというか、 ラインナップが現代的になった上に内容も充実しているように感じる。

例えば、nodejsnginxdocker-composeなどはCentOS7だとEPELからしかインストールできなかったのだが、 RHEL9系だと(docker-composepodman-dockerに置き換えられたとはいえ)すべて公式リポジトリから入手することができる。 当然、certbotfail2banなど依然としてEPELから入手する必要のあるものも存在するが、 EPELを入れないと使い物にならないという時代は終わりを迎えつつあるのかもしれない。