はじめに
こんにちは。私はアメリカ在住で、独学を通してエンジニアを目指している者です。
本日は現在学習中のLinuxコマンドの1つであるdnfコマンドについてみていきたいと思います
dnf とは
dnf (Dandified Yum) は、FedoraやRed Hat系ディストリビューションで採用されているパッケージ管理システムで、インターネット経由でソフトウェアをインストールしたり、アップデートしたりすることができます
dnfのインストールと基本コマンド
FedoraやRHEL系ディストリビューション(AlmaLinux, Rocky Linuxなど)では標準的にインストールされています。もしインストールされていない場合は、下記のようにインストールできます。
sudo yum install dnf
1. パッケージのインストール
sudo dnf install <パッケージ名>
- 例:
sudo dnf install httpd(Apache HTTP Serverをインストール)
2. パッケージの削除
sudo dnf remove <パッケージ名>
- 例:
sudo dnf remove httpd
3. パッケージの検索
dnf search <キーワード>
- 例:
dnf search nginx
4. システムの更新
sudo dnf update
システム上のパッケージを一括で更新します。セキュリティアップデートやバグ修正が含まれるため、こまめに実行することが推奨されます。
5. パッケージグループの操作
dnfでは、パッケージの「グループ」単位でインストールや削除を行うことができます。
sudo dnf group install "Development Tools"
"Development Tools"は、CコンパイラやGCCなどのツールチェーンをまとめてインストールできるグループの一例です。
dnfの設定ファイル
/etc/dnf/dnf.conf がメインの設定ファイルです。リポジトリ設定など、より詳細な設定は /etc/yum.repos.d/ ディレクトリ内にある .repo ファイルを編集することで行います。
主な設定項目例:
-
cachedir: パッケージダウンロード時のキャッシュ保存先 -
keepcache: ダウンロードしたパッケージを更新後も保持するかどうか -
exclude: インストールや更新の対象から除外するパッケージ
dnf の便利なオプション
-
-y(yes): すべての操作を自動的に承認するsudo dnf -y install <パッケージ名> -
--downloadonly: インストールはせずにパッケージをダウンロードのみ行うsudo dnf install --downloadonly <パッケージ名> -
autoremove: 不要になった依存パッケージをまとめて削除sudo dnf autoremove
まとめ
dnfは、FedoraやRHEL系ディストリビューションで強力なパッケージ管理を提供するコマンドです。
従来のYumコマンドをベースに、依存関係の解決速度や安定性を向上させているため、より効率的にシステムを管理することができます。
追記
この記事のような細かい技術的な詰まりを一つずつ解消しながら、
私は未経験から独学でエンジニアを目指してきました。
学習中に迷ったポイントや、遠回りした判断などを
別の記事でまとめています。
・独学で進めているが、手応えを感じにくい
・調べても不安が残ることが増えてきた
もし当てはまるものがあれば、参考になる部分があるかもしれません。