Ubuntu日本語フォーラム
ログインしていません。
OSのアップグレードに失敗した経験のある人が多いようですが、以下の点に気をつけると失敗を劇的に減らすことができます。
0. 大切なファイルのバックアップ
アップグレードに失敗してクリーンインストールする事態も想定して大切なファイルのバックアップはしておきましょう。
1. 事前動作テスト
1.1 仮想マシンが使用できるのであれば、仮想マシンで実環境と同じ構築環境にしてOSのアップグレードを試してみる。
1.1.1 ついでに普段使用しているソフトウェアがアップグレード先のバージョンで動作するかテストしておく。
1.2 目的のバージョンのLiveUSBを作成して実機(仮想環境で運用している方は仮想環境)で動作するかテストする。
※ ハードウェア周りのテストは実機でなければできないため。
1.2.1その実機(仮想環境で運用している方は仮想環境)のLive環境で普段使用しているソフトウェアが動作するかテストする。
※ 上記1.1.1ではうまく動かなかったソフトウェアが動くようであれば、古い設定をうまく引き継げないソフトウェアである可能性が考えられます。ハードウェアドライバーによる動作の違いという可能性もあります。
※ 上記1.1.1で使えていたアプリが見つからなくてインストールできない場合は、リポジトリーからパッケージが削除されている可能性があります。
2. パッケージの事前整理
2.1 PPAのパッケージを使用している場合はppa-purgeを使用してパッケージを正規のパッケージに戻す。
2.2 独自に構築したパッケージや外部のパッケージなども同様に削除するか正規のパッケージに戻し、リポジトリーを追加している場合はそれを無効にする。
2.3 i386のパッケージ(Wineなどをインストールすると自動でインストールされる)を削除する。
※ 例えば、Wineをインストールしている場合はターミナルアプリケーションで「 sudo apt autoremove wine-stable 」を実行する、など。
2.4 使用OSがUbuntu Desktopであるならubuntu-desktopパッケージ(最小構成だとubuntu-desktop-minimal?)、Xubuntuであればxubuntu-desktop(最小構成だとxubuntu-desktop-minimal)パッケージなど、標準でインストールされているはずのメタパッケージが削除されている場合はインストールする。
※ 削除されていても、よほどのことがない限り修復されたりはします。
2.5 「ソフトウェアの更新(update-manager)」でパッケージを最新の状態にする。
3. 落とし穴?
3.1 アップグレード中にロック画面にならないようにロック画面の設定を無効にしておく。
※ 復帰できなくなってアップグレードの進捗状況がわからず電源ボタンを押して自滅、という話が昔から割とあります。
3.2 システムの設定ファイル(/etcディレクトリー配下)を変更している場合はアップグレード中に変更されているファイルをどうするか訊ねられることがあるので、設定の見直しなど心の準備をしておく。
※ どうするか訊ねられたときは、どのファイルに変更があるのかをメモしておき「パッケージメンテナーのバージョンをインストールする」を選択して更新し、自身で施した設定に戻すのはアップグレード後で良いかと思います(なお、変更前のファイルが同じディレクトリーに「ほにゃらら-old」というファイル名で残っていますので更新前の設定内容を見返すことはできます)。メンテナーの設定に更新しておかしくなるようなら設定をしたものの責任と割り切りましょう(/etcディレクトリー配下をあちこち弄り回す迷惑なツールがあったりなかったりなので…)。
3.3 アップグレードはdo-release-upgradeコマンドを直に実行するより「ソフトウェアの更新(update-manager)」を使う。
do-release-upgradeコマンドを直に実行するのと比べると、update-manager経由のほうがうまくやりくりしてくれるようで成功率が遥かに高まります。
※ なお、「 update-manager -d 」や「 do-release-upgrade -d 」のように「-d」オプションをつけたやり方を掲載しているサイトがあったりしますが、「-d」オプションはターゲットとなるバージョンが開発中・調整中であってもアップグレードを行うという強行手段ですので、「-d」オプションは付けないようにしてください。
4. アップグレードに失敗してしまったときは?
4.1 既知の不具合であるならネット上に回復方法があるかもしれません。
※ なければ下記コマンドを実行して修復を試みるしかないと思います。
1つ目の「 sudo apt install -f 」で依存関係によりインストールが不完全となっているパッケージ群の修復を試み、2つ目の「 sudo apt upgrade 」で更新できるパッケージが残っている場合にそれを更新します。
sudo apt install -f sudo apt upgrade
エラーなく完了して、ディストリビューションのメタパッケージであるubuntu-desktopパッケージなどがインストールされていて、保留パッケージがわんさか残っていたりしなければ、一応はアップグレードは完了したと判断して良いかと思います。
オフライン
なお、Ubuntu 22.04から24.04へdo-release-upgradeコマンドを使用してアップグレードをする際は、特に気をつけてほしいのが「パッケージの整理」です。
Ubuntu 24.04では多くのパッケージに名前の変更が加えられていて(※)アップグレード時にそれらパッケージの置き換えが行われます。この複雑な処理が悪く絡んでしまうと失敗してしまうのではないかと。
例えば、WineHQのパッケージをインストールしてほったらかしたままアップグレードしてしまうと復旧不能な状態に陥ります。
※ 例えば libasound2 が libasound2t64 などのように、パッケージ名の末尾に「t64」が付与されたものが沢山あります。
オフライン