Fedora41 へのアップグレード
Fedora 23 以降へのアップグレードでは、『fedup』が廃止され、『dnf』でアップグレードする事になった。
そこで今回は『dnf』を使ったアップグレードの方法について説明しようと思う。
※ ココでのアップグレードは Fedora 22 を使用している人を対象にしています。『dnf-plugin-system-upgrade』は Fedora21 から利用出来ますので、Fedora21 では『dnf』をインストールしている場合に限り、有効ではないかと思います。
※ アップグレードを行い場合は、事前に必ずバックアップを取りましょう。
※ Fedora23 のインストールメディアはココから入手出来ます。
dnf でのアップデート
アップグレードを行う前に、パッケージのアップデートを必ず実行しておきましょう。
例:
sudo dnf update --allowerasing -y
『–allowerasing』オプションには依存関係エラーを解決する機能があります。
dnf-plugin-system-upgrade のインストール
『dnf』を使ったアップグレードでは『dnf-plugin-system-upgrade』が必要だ。
しかし、元々『fedup』を利用していた場合は、自動でインストールされている。
インストールされていない場合は、『dnf install dnf-plugin-system-upgrade』コマンドをシステム権限で実行して下さい。
例:
sudo dnf install dnf-plugin-system-upgrade -y
※ 『-y』オプションは質問に対し『yes』で応えるオプションです。時間が掛かる処理ですので、放置する場合は、使用した方が良いでしょう。
Fedora22 がクリーンインストールである場合は、『–best』オプションを利用することが出来ます。 このプションは、パッケージの最適化いますが、依存エラーを起こす側面があります。
例:
sudo dnf system-upgrade download --releasever 41 --allowerasing --best -y
通常のパッケージのダウンロードでは、オプションを利用しないで行う方が良いかも知れません。
例:
sudo dnf system-upgrade download --releasever 41 -y
ダウンロードが完了した場合は、エラーが無い事を確認して下さい。 エラーメッセージは最終行付近に『error』の文字と共に報告されます。
エラーがある場合は、問題の解決を行わないと、アップグレードは実行できません。
なお、このダウンロード処理は、複数回実行しても問題ありません。
dnf でのリブート
『dnf』でリブートすることにより、Fedora23 にアップグレードが行われます。
例:
sudo dnf system-upgrade reboot
※ この処理は直ちに実行されます。 編集中のドキュメントなどがある場合は、速やかに保存・終了して下さい。
dnf-2 での問題
dnf-plugin-system-upgrade のインストールを行うと問題が発生し、アップグレードが行えなかったマシンがありました。
そこで、仕方がないので、Python3 版の DNF でアップグレードを行いました。
# # Python3 版のインストール
# dnf install --disableplugin=system_upgrade -y python3-dnf-langpacks.noarch python3-dnf-plugin-system-upgrade.noarch python3-dnf-plugins-core.noarch python3-dnfdaemon.noarch
#
# # Python2 版から Python3 版へ切り替え
# cd /usr/bin/
# rm dnf
# ln -s dnf-3 dnf
#
# # 以下は通常の作業