Red Hat 系 Linux において、RPM と DNF はソフトウェア管理の異なる役割を担います。この実践コースでは、個別の RPM ファイルを調査・インストールする層と、DNF でトランザクションを追跡しリポジトリを利用する層の両方を操作します。
実際のパッケージ記録を照会し、依存関係が満たされず手動インストールが失敗する様子を確認したうえで、記録済みの DNF トランザクションを取り消し、RPM ファイルのディレクトリをローカルリポジトリに変換します。最後のチャレンジでは、少ないガイドで同じ流れを再現し、設定したソースから zsh をインストールします。
学習内容
rpmでパッケージのインストール状況を確認し、提供されるファイルを一覧表示する- インストール済みファイルの所有パッケージを特定し、未インストールの RPM ファイルを調査する
- ローカル RPM パッケージをダウンロード、インストール、検証、削除する
- RPM による直接インストールがリポジトリの依存関係を自動解決しない理由を説明する
- DNF のトランザクション履歴を確認し、特定のパッケージインストールを取り消す
createrepo_cでメタデータを生成し、ローカルのfile://ソースを登録する- ローカルリポジトリを検証し、DNF 経由でパッケージをインストールする
このコースの対象者
この中級コースは、RPM ベースのパッケージ管理と小規模なローカルリポジトリの流れを実践したい Linux 学習者、システム管理者、DevOps 担当者を対象としています。
前提知識: Linux シェルの使用、ファイルやディレクトリの移動、sudo による管理コマンドの実行ができること。基本的なパッケージインストールの経験があると役立ちますが、必須ではありません。
学習環境: rpm、dnf、createrepo_c と管理者権限を備えた Red Hat 系 Linux ターミナル。リポジトリはラボマシン内のローカル構成で、演習のため GPG 検証を無効にします。
よくある質問
このコースでの RPM と DNF の実務上の違いは何ですか?
rpm はインストール済みパッケージのデータベース照会とパッケージファイルの直接操作に使います。DNF はリポジトリを利用したインストール、依存関係の処理、記録済みトランザクション履歴に使います。
本番運用に対応したパッケージリポジトリを構築しますか?
いいえ。ローカルファイルシステム上に機能するリポジトリを構築して登録します。ラボでは意図的に gpgcheck=0 を使用し、パッケージ署名、HTTPS 配信、アクセス制御、ミラー、複数ホストへの配布は扱いません。
実際に元へ戻す演習は含まれますか?
はい。zip をインストールし、dnf history で該当トランザクションを特定して ID 単位で取り消し、パッケージの削除と新しい取り消し記録の両方を確認します。





