yum/dnfコマンドの概要をまとめました。本記事では、Red Hat Enterprise Linux 9.6でのコマンドの実行結果を紹介します。
yumコマンドとは
yumコマンドはRed Hat系のLinuxのディストリビューションでソフトウェアをインストールするのに使用するコマンドです。
yumはYellowdog Updater Modifiedの頭文字です。
yum (YellowDog Update)は、 RPM のインストールを改善するために Dukevideo によって開発されたパッケージマネージャーです。yum は、多くのリポジトリーでパッケージとその依存関係を検索するため、依存関係の問題を軽減するために一緒にインストールできます。
dnfコマンドとは
dnfコマンドは、Python(パイソン)2系から3系にアップグレードされることに伴ってyumから独立して新しく作られたコマンドです。
YUMはPythonで書かれていますが、Python 2系となっています。そのため、今後Python 3系に対応するために作られたのがDNFということになります。

dnfはyumとの互換性があり、現在ではyumコマンドはdnfの設定ファイルへのシンボリックリンクを使用する形でdnfコマンドと変わりなくyumコマンドを使用することができます。
dnfはDandified Yumを意味します。
上記はfedoraの公式サイトです。fedoraはRed Hat系のディストリビューションで、Red Hat Enterprise Linuxの開発段階のディストリビューションになります。
余談ですがfedoraという英単語はRed Hatが赤帽であるのに対してただの色のついていない中折れ帽子ということを意味します。

yumとdnfには互換性があり、RHEL9.6の時点ではどちらも同じように使える
前述の通り、yumとdnfには互換性があるため、RHEL9.6の時点では、yumコマンドもdnfコマンドもどちらも同じ様に使うことができます。
yum/dnfの設定ファイル
yum・dnfの設定ファイルについて説明します。
/etc/yum.confと/etc/dnf/dnf.conf
/etc/yum.confは/etc/dnf/dnf.confへのシンボリックリンクです。

/etc/dnf/dnf.confはyum/dnfコマンドの設定を記載しておくファイルです。
RHEL9.6ではデフォルトで以下の内容が記載されていました。
[user@RHEL96 ~]$ cat /etc/dnf/dnf.conf
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False
レポジトリへのアクセス
レポジトリは、RPMパッケージが格納されているサーバーです。yumコマンドやdnfコマンドでインストールするRPMパッケージはこのレポジトリに保存されているRPMパッケージを使用しています。
レポジトリの詳細は以下の記事で解説しています。
yum/dnfコマンドの使い方
yum/dnfコマンドの使い方を紹介します。
RPMパッケージをインストールする
以下のいずれかのコマンドでRPMパッケージをインストールできます。
# yum install <サービス名>
# dnf install <サービス名>
オプションで-yをつけて実行すると、インストール確認メッセージが表示されずに対象のRPMパッケージとその依存関係にあるRPMパッケージがインストールされます。
# yum install -y <サービス名>
# dnf install -y <サービス名>
RPMパッケージの最新化
インストールされているすべてのPRMパッケージを最新の状態にアップデートします。
# yum update
# dnf update
インストール済みのRPMパッケージの一覧
以下のコマンドでインストール済みのRPMパッケージの一覧を表示します。
# yum list installed
| grepをつけることでインストール済みのパッケージを検索することができます。例えば、pythonとその関係するRPMパッケージを確認したい場合は以下です。
# yum list installed | grep python
実行結果の例は以下です。以下はRHEL9.6での実行結果です。
[root@RHEL96 ~]# yum list installed | grep python
ibus-anthy-python.noarch 1.5.13-4.el9_4 @rhel-9-for-x86_64-appstream-rpms
libcap-ng-python3.x86_64 0.8.2-7.el9 @rhel-9-for-x86_64-appstream-rpms
libpeas-loader-python3.x86_64 1.30.0-4.el9 @rhel-9-for-x86_64-appstream-rpms
policycoreutils-python-utils.noarch 3.6-2.1.el9 @rhel-9-for-x86_64-appstream-rpms
python-unversioned-command.noarch 3.9.21-2.el9 @rhel-9-for-x86_64-appstream-rpms
python3.x86_64 3.9.21-2.el9 @rhel-9-for-x86_64-baseos-rpms
python3-argcomplete.noarch 1.12.0-5.el9 @rhel-9-for-x86_64-appstream-rpms
python3-audit.x86_64 3.1.5-4.el9 @rhel-9-for-x86_64-appstream-rpms
python3-brlapi.x86_64 0.8.2-4.el9 @rhel-9-for-x86_64-appstream-rpms
python3-cairo.x86_64 1.20.1-1.el9 @rhel-9-for-x86_64-appstream-rpms
python3-cffi.x86_64 1.14.5-5.el9 @rhel-9-for-x86_64-appstream-rpms
python3-chardet.noarch 4.0.0-5.el9 @rhel-9-for-x86_64-baseos-rpms
(以下略)
RPMパッケージの詳細情報を確認する
以下のサブコマンドinfoを使用することで、RPMパッケージの詳細情報を確認できます。
# yum info
# dnf info
RHEL9.6でApache HTTP Serverの詳細情報を表示した例は以下です。
[root@RHEL96 ~]# dnf info httpd
サブスクリプション管理リポジトリーを更新しています。
メタデータの期限切れの最終確認: 3:36:36 前の 2025年10月30日 10時30分51秒 に実施しました。
インストール済みパッケージ
名前 : httpd
バージョン : 2.4.62
リリース : 4.el9_6.4
Arch : x86_64
サイズ : 59 k
ソース : httpd-2.4.62-4.el9_6.4.src.rpm
リポジトリー : @System
repo から : rhel-9-for-x86_64-appstream-rpms
概要 : Apache HTTP Server
URL : https://httpd.apache.org/
ライセンス : ASL 2.0
説明 : The Apache HTTP Server is a powerful, efficient, and extensible
: web server.


