(2025.8.28 記)
Ubuntuは無償OSですが、Windows同様にサポート期限があります(以下表参照)。

現在22.04LTSを利用していますが、将来を考えて最新までアップグレードしておくかと思い、実際にアップグレードを試みた一連の内容をまとめた忘備録になります。
現時点で言うとあと4年はサポートが続くのですが、26.04LTSがリリースした際はまた記事にして残しておこうと思います。
ちなみに、コマンド1つ打つだけなので、アップグレード自体は簡単でした。
ただ、色々注意点があるので、その点気を付けてください。(22.04に上げるときに苦戦を強いられた・・・)
後はOS上に載っているソフト次第・・・ですかね。
時間:約2時間
0.実行環境・注意点
■実行環境
・さくらVPS(メモリ:4GB、CPU:2.6GHz, 3コア、SSD:200GB, 空125GB)
・LinuxOS:Ubuntu22.04LTS
・Apache:2.4
・MySQL:8.0
・PHP:7.4、8.1
■注意点
アップグレード要件
①容量:25GBの空き
②メモリ:4GB以上
③CPU:2.0GHz以上、デュアル以上
要件を満たさずアップブレードすると実行環境がぶっ壊れます(前回やらかした)
1.テスト環境構築
既に整備されている方はスキップしてください。
ぶっちゃけ、OSのアップグレードは簡単にできます。
問題は、そこに載ってるソフトウェアが現行通り正常に動作するのかどうか、です。
アップグレードしたら動かなくなっちゃった・・・ではマズいうえ、既に稼働中のサーバともなればすぐに原状復帰させる必要性があります。
ですので、まずはアップグレードして問題ないかを検証するテスト環境を構築する必要があります。
①仮想環境構築
まずは仮想環境を構築します。
当方はWindowsOSの載ったPCにて、さくらVPS上のUbuntuOSを管理しています。
そこで、Windowsに初期搭載しており、私が使い慣れているという理由で、仮想環境「Hyper-V」を選択しました。
Windows11であれば、検索窓に「Hyper-V」と入力すると、アプリケーションが出てくるはずです。

インストールされていなくても表示され、勝手にWindowsUpdateからインストーラが起動し、Hyper-Vマネージャがインストールされます。
趣旨からずれるので、Hyper-Vの操作説明は省きます。
もちろんVMWareでもOKです。
②バックアップ&リカバリ(クローン)環境構築
次に、仮想環境に実環境を載せるため、実環境の情報を抜き取る必要があります。
いくつか方法がありますが、今回は「ReaR」というフリーツールを利用し、ISOファイルにて抽出することにしました。
現行にてバックアップ&レストア(クローン)環境を、この「ReaR」を利用して構築しているのが理由です。
現行環境を抜き取り、先ほど作成した仮想環境に載せて(レストアさせて)あげることで、テストできる環境が構築できます。
趣旨からずれるので、詳細は省きます。
2.アップグレードコマンド実行
22.04LTSへのアップグレードと変わりはありませんでした。
まず最初に注意点として、アップグレード中に以下のような注意文が出てくるときがあります。↓
(xscreensaver and xlockmore must be restarted before upgrading)

これは「スクリーンセーバーと画面ロック機能をアップグレード前に再起動させとけよ」という内容で、これがアップグレード中に走っちゃうとフリーズします。
一回環境が壊れたこともあったので、この「xscreensaver」と「xlockmore」は再起動と言わず、以下のコマンドでプロセスを停止しておきましょう。
sudo pkill xscreensaver
sudo pkill xlockmore
エラーが出なかったら停止されているはず。
準備が整ったら、次のコマンドを淡々と打ち込み、アップグレードの前準備を行います。
Yes or No の選択肢は、全て「y」で回答してください。
sudo apt update
sudo apt install update-manager
sudo apt dist-upgrade
最後のコマンドを入力すると、以下のような選択肢が出るので、[y]で返答します。

すると、アップグレードに必要なデータを取得しに行きます。
途中、PHPやMySQL等アプリケーションの最新版のバージョンにアップするかどうか聞いてきます。
これらはデフォルト選択肢の「Keep the local version currently installed」を選択することで、現行バージョンの利用を続ける意思表示ができます。(のはずなのに、勝手に最新版のPHPだけがインストールされた・・・)

上記が完了したら、次のコマンドを入力することで、OSのアップグレードが実行されます。
sudo do-release-upgrade
すると、下図のように”アップグレードする前に再起動してください”みたいな内容が出るので、再起動後にもう一度コマンドを入力します。

sudo reboot
<再起動後>
sudo pkill xscreensaver
sudo pkill xlockmore
sudo do-release-upgrade

始まりましたね。
パッケージをチェック中、下図のように”サードパーティ製のソフトウェアを見つけたので、アップグレード後に消されてないか確認してね?始めるならEnter押してね”ってメッセージが出るので、[Enter]で進めます。

次に、下図のように”アップグレードのインストールに数時間要するかもしれないけど、続ける?”と問われるので、[y]で続けます。

途中、以下のようなインストール済みソフトウェアに対し、”アップデート情報があるとそいつも序にアップデートするかい?”って度々聞いてきますので、環境に合わせて選択しを判断してください。
アップグレード中は全てアップデートせず、アップグレードの正常完了を確認してから、各々のソフトウェアのアップデートを行う方が問題が少ないと思います。
ですので、今回は全て[n]でアップデートしない方向で進めます。

アップグレードが完了すると、再起動が問われます。↓

再起動後、次のコマンドを実行し、OSがアップグレードされていれば完了です。↓
more /etc/os-release

ちなみに、アップグレード自体は何のエラーもなく完了できました。
(そんなに変なソフトウェアを導入してないからだろう・・・)
3.最後に
アップグレード中にフリーズして強制再起動し、再びアップグレードコマンドを入力すると以下のようなコマンドを実行しろ!と注意されます。
この時は素直に入力して、再度アップグレードコマンドを入力すると上手くいきます。
apt --fix-broken install
基本的にソフトウェアのアップデートを行う選択肢を選ばなければすんなり行くのかと思います。
ただ、アップグレードに掛かる時間がそもそも長いので、作業中にPCがスリープになったりすることが無いよう気を付けたいところです。
次は、26.04LTSへのチャレンジですね。
▼オススメ教本▼

コメント