【WSL】Ubuntuのdo-release-upgradeが失敗するので実行できるようにする

こんにちは、しきゆらです。
今回は、WSL2上で動いているUbuntu自体のアップデートをしようとして詰まったのでメモしておきます。

Ubuntuは半年に1回大きめのアップデートが入ります。
こいつをインストールするためのコマンドがdo-release-upgradeです。

このdo-release-upgradeさん、WSL環境で実行しようとすると、最初のパッケージのリストを取得した後に失敗します。
何度やっても落ちるので、もしやと思いsystemdのPIDを1にした状態で実行するとうまくいったのでその時のメモです。


そして、genieの実行手順が以前と変わっていたのでまた別にメモしておきます。
【WSL2】Ubuntu 20.04でPID1をsystemdにする 2021年7月版

genie -sなどでsystemctlが使える状態にしたうえでsudo do-release-upgradeを実行するだけ。
なお、設定によってLTSのみ/最新まで追いつく、など挙動が変わります。
設定ファイルは/etc/update-manager/release-upgradesにあり、設定方法や挙動もコメントで記載されているので変更しておきます。

# Default behavior for the release upgrader.

[DEFAULT]
# Default prompting and upgrade behavior, valid options:
#
#  never  - Never check for, or allow upgrading to, a new release.
#  normal - Check to see if a new release is available.  If more than one new
#           release is found, the release upgrader will attempt to upgrade to
#           the supported release that immediately succeeds the
#           currently-running release.
#  lts    - Check to see if a new LTS release is available.  The upgrader
#           will attempt to upgrade to the first LTS release available after
#           the currently-running one.  Note that if this option is used and
#           the currently-running release is not itself an LTS release the
#           upgrader will assume prompt was meant to be normal.
Prompt=normal # 今回はlts => normalに変更

あとは、画面に従って進めていくだけ。
実行後にlsb_release -aでバージョンを確認して上がっていれば完了です。

動きを見ていると、パッケージのリストを取得した後にsnapdなどを動かそうとしてうまくいかずに落ちているようでした。
genieを動かしておくと、ここで落ちずにきちんと流れていきました。
一安心。

私の手元では、20.04から複数回実行して21.10まで上がりました。
最新はなんとなく良い気持ち。

ということで、今回はWSL2上で動いているUbuntu自体のアップデートで詰まったので解消方法をメモしました。
意外と記事が出てこず、いろいろやっているうちにもしやと思い動かすとうまくいったよ、というしょうもない内容でした。

今回は、ここまで。
おしまい