それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

ubuntu 20.4 LTSでsnap lxd が起動しなくなった

ubuntu 20.4 LTSでsnap lxd が起動しなくなった

SnapdとLTS は相性が悪い。

SnapdのアップデートとAptのアップデートが独立して走るので、snapが何かのタイミングでzpool 最新版を要求するが、LTSのAptにはそれがなくてつんだ。HWEで追いかける必要があった。知らなかったので焦った。

LXD が起動しなくて泣いた。

LXDが起動しなくなった。

 cat /var/snap/lxd/common/lxd/logs/lxd.log

エラーが出てる

エラーの詳細をみていくと

modinfo zfs | grep version
lxd --debug --group lxd

OVMF_CODE.4MB.fd が見つからないと言われている、名前が変わったのかもしれない。

ln -s /usr/share/OVMF/OVMF_CODE_4M.fd /usr/share/OVMF/OVMF_CODE.4MB.fd

zpool がないとエラーになる。

確認すると、zpool はある

which zpool

しかしzpool関連でエラーになる。

Error: Required tool 'zpool' is missing

バージョンをみてみると

takuya@host:~$ zpool version
zfs-0.8.3-1ubuntu12.17
zfs-kmod-2.1.5-1ubuntu6~22.04.3

snapd の最新版LXDと合わないみたいなので追加で入れることになる。

sudo apt-get install --install-recommends linux-generic-hwe-20.04

ubuntu のHWEをインストールして適用する

takuya@host:~$ sudo apt list linux-generic-hwe*
Listing... Done
linux-generic-hwe-18.04-edge/focal-updates,focal-security 5.4.0.181.179 amd64
linux-generic-hwe-18.04/focal-updates,focal-security 5.4.0.181.179 amd64
linux-generic-hwe-20.04-edge/focal-updates,focal-security 5.15.0.105.115~20.04.1 amd64
linux-generic-hwe-20.04/focal-updates,focal-security,now 5.15.0.105.115~20.04.1 amd64 [installed]

再起動したら解決した。

ubuntu LTS はHWEが前提らしい。

「HWE」は、Ubuntuで使われる用語で、「Hardware Enablement Stack」の略です。これは、特定のUbuntuリリースで新しいハードウェアをサポートするための機能のセットを指します。

カーネル提供は3つに大別されます。

カーネル 種類 備考 GA General Availability 一般公開版(安定版) HWE Hardware Enablement 最新版(安定版) HWE edge Hardware Enablement edge プレビュー版(正式リリース前)

https://ararabo.jp/2018-06-25/?p=6436

ubuntu LTS ももう怖い。

僕が使ってるUbuntuは20.04 や 22.04 のLTSなんですよね。

LTSだから unattended updates (自動アップデート)だけでいいかとおもってたら、SnapdのバージョンはUbuntuに関係なくあがっていくのがあるので、HWEで追加しないといけないようです。

ほんとうに、Snapdは余計な機能になりましたね。

そして、snap 推しのUbuntuとは縁を切ってArchで人柱するか、Debianで安定運用に切り替えていきたいと思います。流石にこれは恐ろしすぎる。

Ubuntuを使う場合は、2年に一度アップデートをしたほうが良いでしょう。