はじめに
検証用に Rocky Linux 9.6 をクリーンインストールし、 dnf upgrade でアップデートができなかった。
非常に簡単なトラブルシューティングだったが備忘のため、記事に残しておく。
この記事を読んで欲しい人
- 同じ問題が発生して困っている人
発生した問題
dnf upgrade -y でアップデート時に以下のエラーが出力し、アップデートができなかった。
メタデータの期限切れの最終確認: 0:01:35 前の 2026年02月23日 09時28分02秒 に実施しました。
エラー:
問題 1: cannot install both python3-3.9.25-3.el9_7.x86_64 from baseos and python3-3.9.25-2.el9_7.x86_64 from baseos
- package python-unversioned-command-3.9.25-2.el9_7.noarch from appstream requires python3 = 3.9.25-2.el9_7, but none of the providers can be installed
- パッケージの最良アップデート候補をインストールできません python3-3.9.21-2.el9.x86_64
- パッケージの最良アップデート候補をインストールできません python-unversioned-command-3.9.21-2.el9.noarch
問題 2: インストール済パッケージの問題 python-unversioned-command-3.9.21-2.el9.noarch
- package python-unversioned-command-3.9.21-2.el9.noarch from @System requires python3 = 3.9.21-2.el9, but none of the providers can be installed
- package python-unversioned-command-3.9.23-2.el9.noarch from appstream requires python3 = 3.9.23-2.el9, but none of the providers can be installed
- package python-unversioned-command-3.9.25-2.el9_7.noarch from appstream requires python3 = 3.9.25-2.el9_7, but none of the providers can be installed
- package python3-3.9.21-2.el9.x86_64 from @System requires python3-libs(x86-64) = 3.9.21-2.el9, but none of the providers can be installed
- package python3-3.9.23-2.el9.x86_64 from baseos requires python3-libs(x86-64) = 3.9.23-2.el9, but none of the providers can be installed
- package python3-3.9.25-2.el9_7.x86_64 from baseos requires python3-libs(x86-64) = 3.9.25-2.el9_7, but none of the providers can be installed
- cannot install both python3-libs-3.9.25-3.el9_7.x86_64 from baseos and python3-libs-3.9.21-2.el9.x86_64 from @System
- cannot install both python3-libs-3.9.25-3.el9_7.x86_64 from baseos and python3-libs-3.9.23-2.el9.x86_64 from baseos
- cannot install both python3-libs-3.9.25-3.el9_7.x86_64 from baseos and python3-libs-3.9.25-2.el9_7.x86_64 from baseos
- パッケージの最良アップデート候補をインストールできません python3-libs-3.9.21-2.el9.x86_64
(競合するパッケージを置き換えるには、コマンドラインに '--allowerasing' を追加してみてください または、'--skip-broken' を追加して、インストール不可のパッケージをスキップしてください または、'--nobest' を追加して、最適候補のパッケージのみを使用しないでください)
問題の原因
BaseOS リポジトリには最新の「python3-3.9.25-3.el9_7.x86_64」が存在するため、インストールしようと試みている。
AppStream リポジトリから関連パッケージも「python-unversioned-command-3.9.25-2.el9_7.noarch」にアップデートしようしている。
「python-unversioned-command-3.9.25-2.el9_7.noarch」にアップグレードするには python3 のバージョンも「3.9.25-2.el9_7」である必要があり、それぞれアップデートすると前提条件が崩れるためアップグレードが止まっていた。
※ python3-libs も同様の問題が発生
対応手順
※手順は root ユーザーにスイッチされている前提で記載
dnf キャッシュ削除
dnf clean all25 ファイルが削除されました再度、アップデート実行
dnf upgrade -y
環境
- Rocky Linux 9.6