
Red Hat系Linux(RHEL、CentOS、AlmaLinux、Rocky Linuxなど)のサーバー構築・運用では、パッケージ管理はインフラエンジニアが最初にマスターすべき必須スキルです。
本記事では、LPIC/LinuCの学習者や新人エンジニア向けに、/etc/yum.conf と /etc/yum.repos.d/ の違いと役割を解説します。現在の主流であるDNFとYUMの関係や、「インストール後にリポジトリ設定は必要なのか?」という疑問にも触れます。
前提知識:YUMとDNFの違い
設定ファイルの解説に入る前に、YUMとDNFの違いを押さえておきましょう。
YUM(Yellowdog Updater, Modified)は、長年Red Hat系Linuxの標準として使われてきたパッケージマネージャーです。
DNF(Dandified YUM)はYUMの後継で、RHEL 8(CentOS 8)以降で標準となりました。処理速度、メモリ使用量、依存関係解決の精度が改善されています。
「それならYUMの設定は学ばなくてよいのでは?」と思うかもしれませんが、そうではありません。新しいOSでも、/etc/yum.conf は実質的に /etc/dnf/dnf.conf へのシンボリックリンクとして機能することが多く、/etc/yum.repos.d/ はDNFでも同じように使われます。
/etc/yum.conf(パッケージ管理の全体設定)
/etc/yum.conf(または /etc/dnf/dnf.conf)は、パッケージマネージャー自体の全体的な動作を定義するメイン設定ファイルです。
キャッシュの保存先、ログの出力先、プロキシの設定など、「コマンド実行時のベースとなるルール」が記述されます。
設定ファイルの記述例
# /etc/yum.conf の例
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5実務では、社内ネットワークでインターネットへ抜けるためにプロキシを経由させる場合(proxy=http://... の追記)によく編集されます。
/etc/yum.repos.d/ とは(リポジトリの個別設定)
/etc/yum.repos.d/ は、ソフトウェアのダウンロード元(リポジトリ)に関する設定を格納する専用ディレクトリです。
YUMやDNFはパッケージをインストールする際、このディレクトリ内の拡張子 .repo のファイルをすべて読み込み、「どこから、どのソフトウェアを取得するか」を判断します。
.repoファイルの記述例
# /etc/yum.repos.d/example.repo の例
[example-repo]
name=Example Repository
baseurl=http://example.com/repo/
enabled=1
gpgcheck=1
gpgkey=http://example.com/repo/RPM-GPG-KEY-example| 項目 | 説明 |
|---|---|
| リポジトリID | リポジトリを一意に識別する名前(例:[example-repo]) |
| name | 人間が読んで識別するための説明文 |
| baseurl | パッケージが置かれているURL(http://, https://, file:// など) |
| enabled | 1 なら有効、0 なら無効 |
| gpgcheck | 1 ならGPG署名チェックを行う |
インストール後も「yum.repos.d」が必要な4つの理由
Linuxを学び始めた方から、「インストールが終わったなら、.repoファイルはもう要らないのでは?」という疑問をよく聞きます。結論から言うと、インストール後もリポジトリ情報は極めて重要です。
セキュリティパッチとアップデートの適用
脆弱性が発見された場合、システムを安全に保つために dnf update や yum update が必須です。このとき、システムは .repo ファイルに記載されたURLへアクセスし、最新の修正プログラムを取得します。
複雑な依存関係の解決
Linuxのソフトウェアは、単体では動かず他のライブラリを必要とするケースがほとんどです。新たな機能を追加する際、不足している関連パッケージを自動的に探し出すためには、常にリポジトリと通信できる状態が必要です。
トラブルシューティング時の原因切り分け
「特定のパッケージがインストールできない」といった障害では、原因がリポジトリ側にあることが多くあります。baseurl のリンク切れ、社内ファイアウォールによる通信遮断など、.repo ファイルの確認が第一歩になります。
カスタム・ローカルリポジトリの運用
企業システムでは、公開リポジトリではなく社内のローカルリポジトリを使うケースが多くあります。社内専用ツールやバージョン固定のソフトウェア配布では、このリポジトリ情報が運用上の要になります。
まとめ
現在の主流はDNFですが、.conf と .repos.d の基本的な仕組みや概念は共通しています。
/etc/yum.conf はキャッシュやプロキシなど、動作そのものを制御する全体設定です。
/etc/yum.repos.d/ は、どこからパッケージを取得するかを定義するリポジトリ設定です。インストール後も、アップデートや依存関係解決のために必須です。
クラウドや業務システム、インフラ構成など、ITまわりでお悩みの際は、まずはお気軽にご相談ください。
課題の整理から設計・開発まで、コンサルティングの形で伴走し、サイト構築や業務システム開発にも対応しています。