Compass note

未踏の地へ踏み出すコンパス的エンジニアノート

Ubuntu 20.04 TLS から 20.10 へのアップグレードをしてみた。|CLI(コマンドライン)版

"Ubuntu 20.04 TLS から 20.10 へのアップグレードをしてみた。|CLI(コマンドライン)版"

Ubuntu 20.04.1 LTS(Focal Fossa) から 20.10 (Groovy Gorilla) へコマンドラインでアップグレードする時のメモです。

LTS(Long Term Support) から LTS ではないバージョンへアップグレードする時には、 /etc/update-manager/release-upgrades ファイルの修正が必要です。

それ以外はいつものアップグレード手順でサクッとできました。

マシン情報

  • Windows 10 上の WSL2(Windows Subsystem for Linux 2)の Ubunt
  • Microsoft Surface Laptop 3
  • バージョンアップ前の情報
$ cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.1 LTS"
NAME="Ubuntu"
VERSION="20.04.1 LTS (Focal Fossa)"

Ubuntu 20.04 TLS から 20.10 へのアップグレード準備

アップグレードの前に現在適用できるパッケージをすべてアップデートします。

$ sudo apt update
$ sudo apt dist-upgrade

補足)update と dist-update の違い

  • apt upgrade:パッケージ構成を変えない範囲でアップグレードする
  • apt dist-upgrade:パッケージ構成の変更に追随してアップグレード

今回はなぜか snapd のパッケージを取得しに行く時にエラーがでて dist-upgrade が失敗してしまいました。。

$ sudo apt upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
  snapd
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 28.6 MB of archives.
After this operation, 6361 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y

Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/s/snapd/snapd_2.48+20.04_amd64.deb Connection failed

直接インストールします。

wget http://archive.ubuntu.com/ubuntu/pool/main/s/snapd/snapd_2.48+20.04_amd64.deb
sudo apt install snapd_2.48+20.04_amd64.deb

ここで proxy 設定がミスっていることに気付きました。。 →修正。

で、もう一度 dist-upgrade を実施。

$ sudo apt dist-upgrade

今度は成功。反映後に OS 再起動します。 カーネルによっては起動時にしか読み込まないものがあるので更新したパッケージを再起動によって最新のものを読み込ませます。

アップデートを実行するためのパッケージが入っていなければインストールします。

$ sudo apt install update-manager-core

今回は、20.04 LTS(Long Term Support)から LTS ではない 20.10 へアップグレードするため、/etc/update-manager/release-upgrades の設定を書き換えます。

変更前)Promt=lts 変更後)Promt=normal

$ sudo cp -p  /etc/update-manager/release-upgrades  /etc/update-manager/release-upgrades-bk20201222
$ sudo vi /etc/update-manager/release-upgrades # Prompt=normal へ変更
$ diff /etc/update-manager/release-upgrades /etc/update-manager/release-upgrades-bk20201222 
16c16
< Prompt=normal
---
> Prompt=lts

Ubuntu 20.04 LTS から 20.10 へのアップグレード実施

アップグレードを開始する前に、アップグレードがあるかどうかの確認をします。

$ sudo do-release-upgrade -c
Checking for a new Ubuntu release
New release '20.10' available.
Run 'do-release-upgrade' to upgrade to it.

アップグレードを開始します。

$ sudo do-release-upgrade

アップグレード中は、指示に従って項目を選択していきます。

Remove obsolete packages? 


14 packages are going to be removed.

 Continue [yN]  Details [d]yN ★

アップグレード完了したらUbuntuを再起動させます。

System upgrade is complete.

Restart required

To finish the upgrade, a restart is required.
If you select 'y' the system will be restarted.

Continue [yN] yN

再起動後に立ち上がったらアップグレードは終わりです。

Welcome to Ubuntu 20.10 (GNU/Linux 4.4.0-18362-Microsoft x86_64)

リブート完了したら 20.10 になっています。

$ cat /etc/os-release 
NAME="Ubuntu"
VERSION="20.10 (Groovy Gorilla)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.10"
VERSION_ID="20.10"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=groovy
UBUNTU_CODENAME=groovy

Ubuntu 20.04 TLS から 20.10 へのアップグレードする手順のまとめ

Ubuntu 20.04.01 LTS から 20.10 へアップグレードするために必要なコマンドはたった 6 つです。

$ sudo apt update
$ sudo apt dist-upgrade
$ sudo vi /etc/update-manager/release-upgrades
$ sudo apt install update-manager-core
$ sudo do-release-upgrade -c
$ sudo do-release-upgrade

LTS 以外のバージョンにする時には /etc/update-manager/release-upgrades の修正をお忘れなく。

    Amazonチャージ