EPELのインストール方法と、CRB, EPEL, EPEL Next の違い

# 1. はじめに

CentOS9でEPELを利用するには、EPEL本体に加えて、依存解決のためにCRBやEPEL Nextの有効化が必要である。つまり、

- CRBを有効にする（デフォルトでは無効になっている）
- [EPEL](https://docs.fedoraproject.org/en-US/epel/epel-about/)および[EPEL Next](https://docs.fedoraproject.org/en-US/epel/epel-about-next/)をインストールする

という手順になるが、この３つのレポジトリの間の関係がわからない？という人のための簡易な解説を行う。


# 2. EPELのインストール方法


CentOS9でEPELを使いたいだけなら、[公式ドキュメントの手順](https://docs.fedoraproject.org/en-US/epel/getting-started/)に従い、このようにすれば良い。

```txt:epelがないのでインストールできない
[root@syasuda-test1 ~]# dnf install fastfetch
Last metadata expiration check: 0:07:48 ago on Mon 12 May 2025 04:45:33 AM UTC.
No match for argument: fastfetch
Error: Unable to find a match: fastfetch
```
```txt:CRB レポジトリを有効にしてEPEL, EPEL Nextをインストール
[root@syasuda-test1 ~]# dnf config-manager --set-enabled crb
[root@syasuda-test1 ~]# dnf install https://dl.fedoraproject.org/pub/epel/epel{,-next}-release-latest-9.noarch.rpm
```
```txt:有効なレポジトリー一覧を確認。CRB, EPEL, EPEL Nextが有効になっている。
[root@syasuda-test1 ~]# dnf repolist enabled
repo id                                                                        repo name
appstream                                                                      CentOS Stream  - AppStream
baseos                                                                         CentOS Stream  - BaseOS
crb                                                                            CentOS Stream  - CRB
epel                                                                           Extra Packages for Enterprise Linux 9 - x86_64
epel-cisco-openh264                                                            Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64
epel-next                                                                      Extra Packages for Enterprise Linux 9 - Next - x86_64

[root@syasuda-test1 ~]# dnf repolist all |grep -e status -e enabled
repo id                       repo name                                 status
appstream                     CentOS Stream  - AppStream                enabled
baseos                        CentOS Stream  - BaseOS                   enabled
crb                           CentOS Stream  - CRB                      enabled
epel                          Extra Packages for Enterprise Linux 9 - x enabled
epel-cisco-openh264           Extra Packages for Enterprise Linux 9 ope enabled
epel-next                     Extra Packages for Enterprise Linux 9 - N enabled
```
```
[root@syasuda-test1 ~]# dnf install -y fastfetch
[root@syasuda-test1 ~]# fastfetch
                 ..                     root@syasuda-test1
               .PLTJ.                   ------------------
              <><><><>                  OS: CentOS Stream 9 x86_64
     KKSSV' 4KKK LJ KKKL.'VSSKK         Host: KVM/QEMU Standard PC (i440FX + PIIX, 1996) (pc-i440fx-6.2)
     KKV' 4KKKKK LJ KKKKAL 'VKK         Kernel: Linux 5.14.0-582.el9.x86_64
     V' ' 'VKKKK LJ KKKKV' ' 'V         Uptime: 1 hour, 53 mins
     .4MA.' 'VKK LJ KKV' '.4Mb.         Packages: 435 (rpm)
   . KKKKKA.' 'V LJ V' '.4KKKKK .       Shell: bash 5.1.8
 .4D KKKKKKKA.'' LJ ''.4KKKKKKK FA.     Display (VGA-1): 1024x768 [External]
<QDD ++++++++++++  ++++++++++++ GFD>    Terminal: /dev/pts/1
 'VD KKKKKKKK'.. LJ ..'KKKKKKKK FV      CPU: Intel Xeon (Cascadelake) (2) @ 2.39 GHz
   ' VKKKKK'. .4 LJ K. .'KKKKKV '       GPU: Cirrus Logic GD 5446
      'VK'. .4KK LJ KKA. .'KV'          Memory: 429.77 MiB / 7.50 GiB (6%)
     A. . .4KKKK LJ KKKKA. . .4         Swap: Disabled
     KKA. 'KKKKK LJ KKKKK' .4KK         Disk (/): 2.40 GiB / 99.85 GiB (2%) - xfs
     KKSSA. VKKK LJ KKKV .4SSKK         Local IP (eth0): 10.50.0.63/24
              <><><><>                  Locale: en_US.UTF-8
               'MKKM'
                 ''
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/62127/dd7b72ff-c0b7-4cad-be5d-bd6c2297ff5d.png)


# 3. crb, epel, epel-next の違い

| リポジトリ名 | 提供元   | 用途 | 必要性・特徴|
|:----------|:---------|:------------|:----------|
| `crb`        | Red HatやRed Hatクローンのディストリビューション| 開発用ライブラリ、ビルドツール（ソースコードビルドなどに必要な *-devel パッケージなどが含まれている）   | デフォルトで無効になっているが、epel の一部パッケージは crb に依存しているため、epelを有効にしただけでは動かないことがある。そのため、epelの依存解決のために有効化することが必須。 |
| `epel`       | Fedora Project | RHELやRHEL互換ディストリビューションに含まれない便利ツール群をRHEL互換にして提供    | 最も広く使われる追加リポジトリ。安定したパッケージが多い。 |
| `epel-next`  | Fedora Project | epel の補完的存在  | EPEL パッケージと RHEL 9 系ディストリビューションとの「互換性のギャップ」を埋めるため、その調整版が epel-next に入る。|


よって、EPELを利用するためには、epelレポジトリだけを有効にすれば良いというわけではなく、crb/epel/epel-nextのレポジトリが全て有効になっている必要がある。

# 4. 関連コマンド

```txt:現在有効（enabled）になっているリポジトリの一覧を表示。
dnf repolist enabled
or
dnf repolist
```

```txt:すべてのリポジトリの状態を確認
dnf repolist all
```

```txt:crbレポジトリの有効化
dnf config-manager --set-enabled crb
or
dnf config-manager --enable crb
```
```txt:crbレポジトリの無効化
dnf config-manager --set-disabled crb
dnf config-manager --disable crb
```

# 5. 実行例


```txt:レポジトリー全部のステータスを確認可能
[root@syasuda-test1 ~]# dnf repolist all
repo id                                                                    repo name                                                                                                                  status
appstream                                                                  CentOS Stream  - AppStream                                                                                                 enabled
appstream-debuginfo                                                        CentOS Stream  - AppStream - Debug                                                                                         disabled
appstream-source                                                           CentOS Stream  - AppStream - Source                                                                                        disabled
baseos                                                                     CentOS Stream  - BaseOS                                                                                                    enabled
baseos-debuginfo                                                           CentOS Stream  - BaseOS - Debug                                                                                            disabled
baseos-source                                                              CentOS Stream  - BaseOS - Source                                                                                           disabled
crb                                                                        CentOS Stream  - CRB                                                                                                       enabled
crb-debuginfo                                                              CentOS Stream  - CRB - Debug                                                                                               disabled
crb-source                                                                 CentOS Stream  - CRB - Source                                                                                              disabled
epel                                                                       Extra Packages for Enterprise Linux 9 - x86_64                                                                             enabled
epel-cisco-openh264                                                        Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64                                                       enabled
epel-cisco-openh264-debuginfo                                              Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64 - Debug                                               disabled
epel-cisco-openh264-source                                                 Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64 - Source                                              disabled
epel-debuginfo                                                             Extra Packages for Enterprise Linux 9 - x86_64 - Debug                                                                     disabled
epel-next                                                                  Extra Packages for Enterprise Linux 9 - Next - x86_64                                                                      enabled
epel-next-debuginfo                                                        Extra Packages for Enterprise Linux 9 - Next - x86_64 - Debug                                                              disabled
epel-next-source                                                           Extra Packages for Enterprise Linux 9 - Next - x86_64 - Source                                                             disabled
epel-next-testing                                                          Extra Packages for Enterprise Linux 9 - Next - Testing - x86_64                                                            disabled
epel-next-testing-debuginfo                                                Extra Packages for Enterprise Linux 9 - Next - Testing - x86_64 - Debug                                                    disabled
epel-next-testing-source                                                   Extra Packages for Enterprise Linux 9 - Next - Testing - x86_64 - Source                                                   disabled
epel-source                                                                Extra Packages for Enterprise Linux 9 - x86_64 - Source                                                                    disabled
epel-testing                                                               Extra Packages for Enterprise Linux 9 - Testing - x86_64                                                                   disabled
epel-testing-debuginfo                                                     Extra Packages for Enterprise Linux 9 - Testing - x86_64 - Debug                                                           disabled
epel-testing-source                                                        Extra Packages for Enterprise Linux 9 - Testing - x86_64 - Source                                                          disabled
extras-common                                                              CentOS Stream  - Extras packages                                                                                           disabled
extras-common-source                                                       CentOS Stream  - Extras packages - Source                                                                                  disabled
highavailability                                                           CentOS Stream  - HighAvailability                                                                                          disabled
highavailability-debuginfo                                                 CentOS Stream  - HighAvailability - Debug                                                                                  disabled
highavailability-source                                                    CentOS Stream  - HighAvailability - Source                                                                                 disabled
nfv                                                                        CentOS Stream  - NFV                                                                                                       disabled
nfv-debuginfo                                                              CentOS Stream  - NFV - Debug                                                                                               disabled
nfv-source                                                                 CentOS Stream  - NFV - Source                                                                                              disabled
resilientstorage                                                           CentOS Stream  - ResilientStorage                                                                                          disabled
resilientstorage-debuginfo                                                 CentOS Stream  - ResilientStorage - Debug                                                                                  disabled
resilientstorage-source                                                    CentOS Stream  - ResilientStorage - Source                                                                                 disabled
rt                                                                         CentOS Stream  - RT                                                                                                        disabled
rt-debuginfo                                                               CentOS Stream  - RT - Debug                                                                                                disabled
rt-source                                                                  CentOS Stream  - RT - Source                                                                                               disabled
```

```txt:crb, epel, epel-nextを無効化
[root@syasuda-test1 ~]# dnf config-manager --set-disabled crb
[root@syasuda-test1 ~]# dnf config-manager --set-disabled epel
[root@syasuda-test1 ~]# dnf config-manager --set-disabled epel-next

[root@syasuda-test1 ~]# dnf repolist enabled
repo id                                                                        repo name
appstream                                                                      CentOS Stream  - AppStream
baseos                                                                         CentOS Stream  - BaseOS
epel-cisco-openh264                                                            Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64

[root@syasuda-test1 ~]# dnf repolist all |grep -e crb -e epel -e epel-next
crb                           CentOS Stream  - CRB                      disabled
crb-debuginfo                 CentOS Stream  - CRB - Debug              disabled
crb-source                    CentOS Stream  - CRB - Source             disabled
epel                          Extra Packages for Enterprise Linux 9 - x disabled
epel-cisco-openh264           Extra Packages for Enterprise Linux 9 ope enabled
epel-cisco-openh264-debuginfo Extra Packages for Enterprise Linux 9 ope disabled
epel-cisco-openh264-source    Extra Packages for Enterprise Linux 9 ope disabled
epel-debuginfo                Extra Packages for Enterprise Linux 9 - x disabled
epel-next                     Extra Packages for Enterprise Linux 9 - N disabled
epel-next-debuginfo           Extra Packages for Enterprise Linux 9 - N disabled
epel-next-source              Extra Packages for Enterprise Linux 9 - N disabled
epel-next-testing             Extra Packages for Enterprise Linux 9 - N disabled
epel-next-testing-debuginfo   Extra Packages for Enterprise Linux 9 - N disabled
epel-next-testing-source      Extra Packages for Enterprise Linux 9 - N disabled
epel-source                   Extra Packages for Enterprise Linux 9 - x disabled
epel-testing                  Extra Packages for Enterprise Linux 9 - T disabled
epel-testing-debuginfo        Extra Packages for Enterprise Linux 9 - T disabled
epel-testing-source           Extra Packages for Enterprise Linux 9 - T disabled
```
```txt:crb, epel, epel-nextを有効化
[root@syasuda-test1 ~]# dnf config-manager --set-enabled crb
[root@syasuda-test1 ~]# dnf config-manager --set-enabled epel
[root@syasuda-test1 ~]# dnf config-manager --set-enabled epel-next

[root@syasuda-test1 ~]# dnf repolist enabled
repo id                                                                        repo name
appstream                                                                      CentOS Stream  - AppStream
baseos                                                                         CentOS Stream  - BaseOS
crb                                                                            CentOS Stream  - CRB
epel                                                                           Extra Packages for Enterprise Linux 9 - x86_64
epel-cisco-openh264                                                            Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64
epel-next                                                                      Extra Packages for Enterprise Linux 9 - Next - x86_64

[root@syasuda-test1 ~]# dnf repolist all |grep -e crb -e epel -e epel-next
crb                           CentOS Stream  - CRB                      enabled
crb-debuginfo                 CentOS Stream  - CRB - Debug              disabled
crb-source                    CentOS Stream  - CRB - Source             disabled
epel                          Extra Packages for Enterprise Linux 9 - x enabled
epel-cisco-openh264           Extra Packages for Enterprise Linux 9 ope enabled
epel-cisco-openh264-debuginfo Extra Packages for Enterprise Linux 9 ope disabled
epel-cisco-openh264-source    Extra Packages for Enterprise Linux 9 ope disabled
epel-debuginfo                Extra Packages for Enterprise Linux 9 - x disabled
epel-next                     Extra Packages for Enterprise Linux 9 - N enabled
epel-next-debuginfo           Extra Packages for Enterprise Linux 9 - N disabled
epel-next-source              Extra Packages for Enterprise Linux 9 - N disabled
epel-next-testing             Extra Packages for Enterprise Linux 9 - N disabled
epel-next-testing-debuginfo   Extra Packages for Enterprise Linux 9 - N disabled
epel-next-testing-source      Extra Packages for Enterprise Linux 9 - N disabled
epel-source                   Extra Packages for Enterprise Linux 9 - x disabled
epel-testing                  Extra Packages for Enterprise Linux 9 - T disabled
epel-testing-debuginfo        Extra Packages for Enterprise Linux 9 - T disabled
epel-testing-source           Extra Packages for Enterprise Linux 9 - T disabled
```