コンテンツにスキップ

YUM/DNF パッケージマネージャ

Red Hat、CentOS、Fedoraのパッケージ管理のための包括的なYUMおよびDNFコマンドとワークフロー。

インストールと更新

基本的なパッケージ操作 (DNF)

コマンド説明
sudo dnf updateすべてのパッケージを更新
sudo dnf upgradeすべてのパッケージをアップグレード(updateと同じ)
sudo dnf install package_nameパッケージをインストール
sudo dnf remove package_nameパッケージを削除
sudo dnf autoremove未使用の依存関係を削除
sudo dnf reinstall package_nameパッケージを再インストール

基本的なパッケージ操作 (YUM)

コマンド説明
sudo yum updateすべてのパッケージを更新
sudo yum install package_nameパッケージをインストール
sudo yum remove package_nameパッケージを削除
sudo yum autoremove未使用の依存関係を削除
sudo yum reinstall package_nameパッケージを再インストール

高度なインストール

コマンド説明
sudo dnf install package1 package2複数のパッケージをインストール
sudo dnf install package-version特定のバージョンをインストール
sudo dnf localinstall package.rpmローカルRPMファイルをインストール
sudo dnf downgrade package_nameパッケージをダウングレード
sudo dnf install --enablerepo=repo package特定のリポジトリからインストール

パッケージ情報

検索と情報

コマンド説明
dnf search keywordパッケージを検索
dnf info package_nameパッケージ情報を表示
dnf list installedインストールされたパッケージの一覧
dnf list available利用可能なパッケージを一覧表示
dnf list updates利用可能な更新プログラムを一覧表示
rpm -qaインストールされているパッケージをすべて一覧表示
rpm -qi package_nameインストールされたパッケージ情報を表示

パッケージの依存関係

コマンド説明
dnf deplist package_nameパッケージの依存関係を表示
dnf repoquery --requires package_nameパッケージ要件を表示
dnf repoquery --whatrequires package_nameパッケージに必要なものを表示
rpm -qR package_nameパッケージの依存関係を表示 (RPM)

リポジトリ管理

リポジトリ操作

コマンド説明
dnf repolist有効なリポジトリをリスト
dnf repolist allすべてのリポジトリを一覧表示
sudo dnf config-manager --add-repo URLリポジトリを追加
sudo dnf config-manager --disable repo_nameリポジトリを無効化
sudo dnf config-manager --enable repo_nameリポジトリを有効にする

EPELリポジトリ (CentOS/RHEL)

コマンド説明
sudo dnf install epel-releaseEPEL リポジトリをインストール
sudo yum install epel-releaseEPEL (YUM) をインストール

システムメンテナンス

クリーンアップ操作

コマンド説明
sudo dnf clean allすべてのキャッシュをクリーン
sudo dnf clean packagesパッケージキャッシュをクリーン
sudo dnf clean metadataメタデータキャッシュをクリーン
sudo dnf autoremove孤立したパッケージを削除

パッケージグループ

コマンド説明
dnf group listパッケージグループを一覧表示
dnf group info "Group Name"グループ情報を表示
sudo dnf group install "Development Tools"パッケージグループをインストール
sudo dnf group remove "Group Name"パッケージグループを削除

設定ファイル

DNF/YUM設定

ファイル説明
/etc/dnf/dnf.confDNFメインコンフィグレーション
/etc/yum.confYUM メインコンフィグレーション
/etc/yum.repos.d/リポジトリ設定ファイル
/var/log/dnf.logDNF ログファイル
/var/log/yum.logYUM ログファイル

dnf.conf の例```ini

[main] gpgcheck=1 installonly_limit=3 clean_requirements_on_remove=True best=False skip_if_unavailable=True fastestmirror=True max_parallel_downloads=10


### リポジトリファイルの例```ini
[example-repo]
name=Example Repository
baseurl=https://example.com/repo/
enabled=1
gpgcheck=1
gpgkey=https://example.com/RPM-GPG-KEY

高度な使用法

履歴とロールバック

コマンド説明
dnf history取引履歴を表示
dnf history info IDトランザクションの詳細を表示
sudo dnf history undo IDトランザクションを元に戻す
sudo dnf history redo IDトランザクションを再実行
sudo dnf history rollback IDトランザクションにロールバック

モジュール管理 (DNF)

コマンド説明
dnf module list利用可能なモジュールをリスト
dnf module list --installedインストールされたモジュールの一覧
sudo dnf module install module:streamモジュールストリームをインストール
sudo dnf module enable module:streamモジュールストリームを有効にする
sudo dnf module disable moduleモジュールを無効にする

セキュリティアップデート

コマンド説明
dnf updateinfo更新情報を表示
dnf updateinfo --securityセキュリティ更新を表示
sudo dnf update --securityセキュリティ更新プログラムのみをインストール
dnf updateinfo list cvesCVEリスト

パッケージビルド

RPM開発

コマンド説明
sudo dnf install rpm-build rpmdevtoolsビルドツールをインストール
rpmdev-setuptreeRPMビルドツリーのセットアップ
rpmbuild -ba package.specRPMパッケージをビルド
rpm -qp --requires package.rpmRPMの依存関係を確認

ソースRPM

コマンド説明
dnf download --source package_nameソースRPMをダウンロード
rpm -ivh package.src.rpmソースRPMをインストール
rpmbuild --rebuild package.src.rpmソースからリビルド

トラブルシューティング

一般的な問題

問題ソリューション
Conflicting packagessudo dnf remove conflicting_package
Broken dependenciessudo dnf check
Corrupted RPM databasesudo rpm --rebuilddb
Repository errorssudo dnf clean all && sudo dnf makecache

ロックの問題

Would you like me to continue with the remaining numbered sections?

コマンド説明
sudo rm /var/lib/rpm/.rpm.lockRPMロックを解除
sudo rm /var/run/yum.pidYUMロックを解除
`ps aux \grep yum`
コマンド説明
sudo rpm --rebuilddbRPMデータベースを再構築
sudo dnf check問題を確認する
sudo dnf distro-syncパッケージを同期
コマンド説明
sudo dnf system-upgrade download --releasever=XXアップグレードをダウンロード
sudo dnf system-upgrade rebootアップグレードを実行
sudo dnf install fedora-upgradeアップグレードツールをインストール
コマンド説明
sudo dnf install flatpakFlatpakをインストール
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepoFlathubを追加
コマンド説明
sudo subscription-manager registerシステムを登録
sudo subscription-manager attach --auto自動アタッチサブスクリプション
sudo subscription-manager repos --enable=repo_nameリポジトリを有効にする
コマンド説明
sudo dnf install centos-release-streamStream リポジトリをインストール
sudo dnf swap centos-linux-repos centos-stream-reposStreamに切り替え
# /etc/dnf/dnf.conf optimizations
[main]
fastestmirror=True
max_parallel_downloads=10
deltarpm=True
keepcache=True
```### 設定チューニング

| コマンド | 説明 |
|---------|-------------|
| `sudo dnf install dnf-plugins-core` | DNFプラグインをインストール |
| `sudo dnf config-manager --set-enabled powertools` | PowerTools (CentOS) を有効にする |### ミラー管理