dnf installでパッケージをインストールする方法|RHEL系Linuxでの使い方を徹底解説

Red Hat Enterprise Linux(RHEL)やそのクローンディストリビューション(AlmaLinux、Rocky Linux、CentOS Streamなど)を使っていると、「ソフトウェアをインストールするにはどうすればいいの?」という疑問にぶつかることがあります。
そんなときに欠かせないのがdnfコマンドです。中でも最も使用頻度が高いのが dnf install
この記事では、dnf installの基本的な使い方から、便利なオプション、よくあるエラーとその対処法まで、丁寧に解説します。
Linux初心者の方でも分かりやすいように、実例を交えてご紹介します。


dnfとは?yumとの違い

dnfは、Red Hat系Linuxで使用される次世代のパッケージマネージャーです。以前はyum(Yellowdog Updater, Modified)が標準でしたが、今ではその後継としてRHEL 8以降ではdnfが主流です。

主な違い:

  • dnfはPython3で書かれており、より高速で安定
  • 依存関係の処理が賢くなっている
  • プラグインシステムが改善されている
  • コマンドの使い方はyumとほぼ同じなので、yumユーザーもすぐに慣れます

dnf installの基本構文

基本的なコマンドは以下の通りです:

sudo dnf install [パッケージ名]

たとえば、vimというテキストエディタをインストールしたい場合:

sudo dnf install vim

このコマンドで、vim本体とその依存パッケージが自動的にインストールされます。


sudoは必要?

多くの場合、パッケージのインストールはシステム全体に関わる操作なので、root権限が必要です。
そのため、一般ユーザーがコマンドを実行する場合にはsudoをつけるのが一般的です。

例:

sudo dnf install httpd

rootユーザーとしてログインしている場合はsudoは不要です。


複数パッケージを一括インストールする

dnf installでは、スペース区切りで複数のパッケージを一度に指定することも可能です。

sudo dnf install git curl wget

この例では、gitcurlwgetをまとめてインストールします。


インストール前に確認だけしたい場合

「このパッケージを入れると何がインストールされるか確認してから実行したい」場合は、--assumenoオプションが便利です。

sudo dnf install vim --assumeno

これによりインストール処理は行われず、何が起こるかの確認だけが表示されます。


インストール時によく使うオプション

dnf installには多くの便利なオプションがあります。

オプション内容
-yすべての質問に「yes」と自動回答(無人インストール)
--nogpgcheckGPGチェックをスキップしてインストール
--best利用可能な中で最も新しいバージョンをインストール
--allowerasing競合するパッケージを削除してインストールを許可

例:

sudo dnf install nginx -y --allowerasing

よくあるエラーと対処法

エラー1:リポジトリが見つからない

Error: Unable to find a match: package_name

これは指定したパッケージがリポジトリに存在しない場合に発生します。対処法としては以下を確認しましょう。

  • パッケージ名のスペルミスがないか?
  • リポジトリが正しく設定されているか?
sudo dnf repolist

で有効なリポジトリを確認できます。

エラー2:GPGキーエラー

Public key for package_name.rpm is not installed

GPG署名の検証に失敗した場合です。リスクを理解したうえで以下のようにインストールを続行することができます:

sudo dnf install package_name --nogpgcheck

パッケージの検索方法

パッケージ名が分からないときは、dnf searchコマンドで探すことができます。

dnf search [キーワード]

例:

dnf search editor

このコマンドで「editor」というキーワードに関連するすべてのパッケージが表示されます。


dnf installとrpm -ivhの違い

RHEL系では、.rpmファイルを直接インストールするrpm -ivhコマンドもありますが、dnf installのほうが以下の点で優れています。

  • 依存関係を自動的に解決
  • リポジトリから安全にインストール
  • GPG署名による検証が行われる

一方で、ローカルにあるrpmファイルを使いたい場合は以下のようにdnfでもインストール可能です:

sudo dnf install ./package_name.rpm

アンインストールするには?

インストールしたパッケージを削除したい場合は、dnf removeを使います。

sudo dnf remove パッケージ名

例:

sudo dnf remove httpd

依存関係も自動で確認して、不要なパッケージが一緒に削除されます。


まとめ

dnf installは、RHEL系ディストリビューションでのソフトウェア管理において欠かせないコマンドです。
基本的な使い方を覚えておくだけで、さまざまなパッケージを簡単にインストール・管理することができます。

ポイントをおさらいしましょう:

  • sudo dnf install パッケージ名 でインストール
  • -y--best などのオプションを活用
  • エラーが出たときはrepolistsearchで確認
  • アンインストールには dnf remove

日々のサーバー管理や開発環境構築において、dnfの知識があるととてもスムーズに作業が進みます。ぜひこの機会に使いこなせるようになってください。

タイトルとURLをコピーしました