Ubuntuを最新のLTSバージョンにアップグレードしたいけれど、「コマンドが分からない」「途中でサーバーが壊れないか心配」という方は多いはずです。結論から言うと、do-release-upgrade コマンド1本で安全にアップグレードできます。
本記事では、Ubuntu 22.04 LTS から 24.04 LTS へのアップグレード手順を、実際にDockerコンテナで動かして確認した実測データとともに解説します。
この記事のポイント
do-release-upgradeコマンドでLTSからLTSへ安全にアップグレードできる- 事前に
apt update && apt upgradeを実行しておくことが必須 - 設定ファイル
/etc/update-manager/release-upgradesのPrompt=ltsがデフォルトで正しい設定 - SSHで接続しているVPSのアップグレードには
-m serverオプションが推奨 ubuntu-release-upgrader-coreのバージョンは Ubuntu 22.04 で1:22.04.20(実測)
目次
- Ubuntu LTS アップグレードの概要
- アップグレード前の準備
- update-manager-core をインストールする
- 設定ファイルを確認する
- do-release-upgrade を実行する
- アップグレード完了後の確認
- よくあるエラーと解決策
- まとめ
Ubuntu LTS アップグレードの概要
Ubuntuには2年ごとにリリースされるLTS(Long Term Support)バージョンがあります。LTSは5年間のセキュリティアップデートが保証されているため、サーバーや安定運用が必要な環境では必ずLTSを選ぶのが鉄則です。
LTS間のアップグレードは「クリーンインストール」ではなく、既存の設定・データを保持したまま上位バージョンに移行できる点が重要です。これを担うのが do-release-upgrade コマンドです。

現在のLTSリリースとアップグレードパスは上の表のとおりです。2026年6月時点で最新のLTSは Ubuntu 24.04(Noble Numbat)です。Ubuntu 22.04 を使っている方は、このまま読み進めてください。
注意
本記事のコマンドは Ubuntu 22.04 LTS から 24.04 LTS へのアップグレードを前提に、Docker公式イメージで実測検証しています。20.04 → 22.04 の手順も基本的に同じですが、パッケージのバージョン番号が異なります。
アップグレード前の準備
アップグレードを始める前に、現在のシステムを最新の状態にしておきます。これを怠ると、アップグレード途中でパッケージの依存関係が壊れる原因になります。
手順1:現在のバージョンを確認する
まず lsb_release -a で現在のUbuntuバージョンを確認します。
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.5 LTS
Release: 22.04
Codename: jammy
Description に Ubuntu 22.04.5 LTS、Codename に jammy と表示されていれば、Ubuntu 22.04 LTS で動いています。
手順2:パッケージを最新状態にする
アップグレード前に既存パッケージをすべて最新に更新します。このステップは必須です。
Hit:1 http://jp.archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://jp.archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB]
Reading package lists… Done
Building dependency tree… Done
0 upgraded, 0 newly installed, 0 to remove and 0 not changed.
「0 upgraded」になれば、すべてのパッケージが最新の状態です。まだ更新があった場合は、sudo apt autoremove も実行してから次へ進んでください。

update-manager-core をインストールする
do-release-upgrade コマンドを使うには update-manager-core パッケージが必要です。デスクトップ版Ubuntuには最初から入っていますが、サーバー版(ubuntu-server)では別途インストールが必要な場合があります。
Reading package lists… Done
The following additional packages will be installed:
python3-distupgrade ubuntu-release-upgrader-core
Setting up python3-distupgrade (1:22.04.20) …
Setting up ubuntu-release-upgrader-core (1:22.04.20) …
Setting up update-manager-core (1:22.04.22) …
$ do-release-upgrade –version
do-release-upgrade: version 22.04.20
実際にDockerコンテナ(ubuntu:22.04)で実行したところ、ubuntu-release-upgrader-core 1:22.04.20 がインストールされ、do-release-upgrade コマンドが使えるようになりました。

| パッケージ名 | Ubuntu 22.04 のバージョン(実測) | Ubuntu 24.04 のバージョン(実測) |
|---|---|---|
update-manager-core |
1:22.04.22 | 1:24.04.12 |
ubuntu-release-upgrader-core |
1:22.04.20 | 1:24.04.28 |
docker run –rm ubuntu:22.04 と ubuntu:24.04 で実測した結果です。各バージョンで専用のアップグレードツールが用意されているのが分かります。
設定ファイルを確認する
アップグレードの挙動は /etc/update-manager/release-upgrades ファイルで制御されています。
# Default behavior for the release upgrader.
[DEFAULT]
# never – Never check for, or allow upgrading to, a new release.
# normal – Check to see if a new release is available.
# lts – Check to see if a new LTS release is available.
Prompt=lts
Prompt=lts(デフォルト)は「次のLTSリリースにのみアップグレードする」という設定です。実際にDockerコンテナで確認したところ、Ubuntu 22.04 の update-manager-core インストール後にこの設定が自動で作成されました。この設定のままで問題ありません。

| Promptの値 | 動作 | 用途 |
|---|---|---|
lts(デフォルト) |
次のLTS版にのみアップグレード | 本番・安定重視 |
normal |
次のリリース(LTS以外も含む)にアップグレード | 最新機能を優先したい場合 |
never |
アップグレードしない | バージョン固定 |
do-release-upgrade を実行する
準備が整ったら、いよいよアップグレードを実行します。
VPS・SSH接続環境での注意
SSH越しにVPSをアップグレードする場合は -m server オプションを必ずつけてください。このオプションを使うと、アップグレード中に別のSSHポート(デフォルト:1022)が追加で開かれ、接続が切れても再接続できるようになります。
手順3:do-release-upgrade を実行する
Checking for a new Ubuntu release
Get:1 http://changelogs.ubuntu.com/meta-release-lts
New release ‘24.04 LTS’ available.
Run ‘do-release-upgrade’ to upgrade to it.
Fetching and installing the upgrade can take several hours.
Once the download has finished, the process cannot be cancelled.
Continue [yN] Details [d]
「New release '24.04 LTS' available.」と表示されれば、アップグレード先が正しく認識されています。y を入力してEnterを押すとアップグレードが開始します。

do-release-upgrade の主なオプション

| オプション | 説明 | 使いどき |
|---|---|---|
(なし) |
インタラクティブなアップグレード | デスクトップ、通常のSSH接続 |
-m server |
サーバーモードでアップグレード(再接続用ポート追加) | VPS・リモートサーバー推奨 |
-c |
アップグレード可否の確認のみ(実行しない) | 事前チェックに |
-d |
開発版(次期リリース)へのアップグレード | テスト環境のみ |
アップグレード完了後の確認
アップグレードが完了してシステムを再起動したら、バージョンが正しく変わったか確認します。
手順4:バージョンを確認する
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.1 LTS
Release: 24.04
Codename: noble
$ uname -r
6.8.0-57-generic
$ cat /etc/os-release | grep PRETTY_NAME
PRETTY_NAME=”Ubuntu 24.04.1 LTS”
Description: Ubuntu 24.04.1 LTS と Codename: noble が表示されれば、アップグレード成功です。


よくあるエラーと解決策
①「No new release found」と表示される
アップグレード先のLTSが見つからない場合に出るエラーです。次の点を確認してください。
Checking for a new Ubuntu release
No new release found.
原因と解決策:
/etc/update-manager/release-upgradesのPromptがneverになっている →ltsに変更する- ネットワークの問題で
changelogs.ubuntu.comに接続できない →ping changelogs.ubuntu.comで疎通確認 - Ubuntu 24.04 がリリース直後でまだ配信されていない場合 → 数週間待つか
-dオプションを使う(非推奨)
②「could not calculate the upgrade」が出る
パッケージの依存関係に問題がある場合に出ます。アップグレード前に sudo apt autoremove && sudo apt autoclean を実行して環境をクリーンアップしてから再試行してください。
③ SSH接続が途切れてアップグレードが止まった
最初から -m server オプションを付けておくのが最善の予防策です。万が一切れた場合は、再度SSHで接続し screen -r や tmux attach でセッションを復元します。
④ 設定ファイルの変更を確認するプロンプトが大量に出る
アップグレード中に「設定ファイルが変更されています。どうしますか?」というプロンプトが繰り返し出ることがあります。迷ったら keep the local version(現在の設定を維持)を選ぶのが安全です。nginx や Apache の設定は既存のものを保持しておき、アップグレード後に手動で確認するのがおすすめです。
まとめ
Ubuntu LTS のバージョンアップグレード手順をまとめます。
手順まとめ
- 事前に
sudo apt update && sudo apt upgrade -yでパッケージを最新化する sudo apt install -y update-manager-coreでアップグレードツールを準備する/etc/update-manager/release-upgradesのPrompt=ltsを確認する(デフォルトでOK)- VPS・SSH環境では
sudo do-release-upgrade -m serverで実行する - 完了後に
lsb_release -aでバージョンを確認する
実際にDockerコンテナ(ubuntu:22.04)で確認したところ、update-manager-core 1:22.04.22 と ubuntu-release-upgrader-core 1:22.04.20 がインストールされ、do-release-upgrade コマンドが正常に動作することを確認しました。手順通りに進めれば、コマンド1本でLTS間の安全なアップグレードが行えます。
VPSで本格的にUbuntuサーバーを運用したい方は、各社の比較記事も参考にしてみてください。



コメント