Armadilloフォーラム

手動のSWUpdateにてBaseOSを更新後にArmadillo A6Eを再起動するとワーニングが発生する

yorikasa

2024年6月11日 18時47分

お世話になっております。
swuファイルを下記のリンク先から入手し、手動のSWUpdateにてBaseOSのアップデートを行いました。
実施までは良かったのですが、Armadillo A6Eの再起動後ログイン時に意図していないwarningが発生するようになりました。

https://armadillo.atmark-techno.com/resources/software/armadillo-iot-a6…

発生するwarningについてどのように対処すればよいか教えていただけますでしょうか?
また、利用していたArmadilloについてですが、DTBを一部変更して利用していたのですが、その影響はございますでしょうか?

* アップデート実施時のログ

/home/atmark # swupdate -i baseos-6e-3.19.1-at.4.swu
SWUpdate v2023.05_git20231025-r0
 
Licensed under GPLv2. See source distribution for detailed copyright notices.
 
[INFO ] : SWUPDATE running :  [main] : Running on iot-a6e Revision at1
[INFO ] : SWUPDATE started :  Software Update started !
[INFO ] : SWUPDATE running :  [install_single_image] : Installing pre_script
[INFO ] : SWUPDATE running :  [read_lines_notify] : Skipping install of component boot 2020.4-at21 (has 2020.4-at21)
[INFO ] : SWUPDATE running :  [read_lines_notify] : Updating base os: copying swupdate_preserve_files
[WARN ] : SWUPDATE running :  [read_lines_notify] : ----------------------------------------------
[WARN ] : SWUPDATE running :  [read_lines_notify] : WARNING: Persistent storage is used for podman, stopping all containers before updating
[WARN ] : SWUPDATE running :  [read_lines_notify] : ----------------------------------------------
[INFO ] : SWUPDATE running :  [read_lines_notify] : Command 'command podman stop -a' output:
[INFO ] : SWUPDATE running :  [read_lines_notify] : 0bba12ecec87f0d5250789236a4e0c946cf9506f59fd63eb4b052286c82432bc
[INFO ] : SWUPDATE running :  [read_lines_notify] : 325c140d86c935d44155813e6c92069b2065b0ab0e79427969577f1a1411d329
[INFO ] : SWUPDATE running :  [read_lines_notify] : bcf33c5d06814fe3e506d2bd915807827bb441320b5ff3bdddfc36afd95dd345
[INFO ] : SWUPDATE running :  [read_lines_notify] : f695bf94a56f99f939f20a3a732af85224caaabf7c5e07801b8ae91baaf3305d
[INFO ] : SWUPDATE running :  [read_lines_notify] : 0b84f6e8288b14633645027ae76232584bc6446b649795c01b19094582c5fc61
[INFO ] : SWUPDATE running :  [read_lines_notify] : 0ba9504b742a3a447a1ca4617727c0d450e7dd8f6aa9b57da5f0d0db80d03b1b
[INFO ] : SWUPDATE running :  [read_lines_notify] : Command 'command podman rm -a -f' output:
[INFO ] : SWUPDATE running :  [read_lines_notify] : 0b84f6e8288b14633645027ae76232584bc6446b649795c01b19094582c5fc61
[INFO ] : SWUPDATE running :  [read_lines_notify] : 0ba9504b742a3a447a1ca4617727c0d450e7dd8f6aa9b57da5f0d0db80d03b1b
[INFO ] : SWUPDATE running :  [read_lines_notify] : 0bba12ecec87f0d5250789236a4e0c946cf9506f59fd63eb4b052286c82432bc
[INFO ] : SWUPDATE running :  [read_lines_notify] : 325c140d86c935d44155813e6c92069b2065b0ab0e79427969577f1a1411d329
[INFO ] : SWUPDATE running :  [read_lines_notify] : bcf33c5d06814fe3e506d2bd915807827bb441320b5ff3bdddfc36afd95dd345
[INFO ] : SWUPDATE running :  [read_lines_notify] : f695bf94a56f99f939f20a3a732af85224caaabf7c5e07801b8ae91baaf3305d
[INFO ] : SWUPDATE running :  [read_lines_notify] : Waiting for btrfs to flush deleted subvolumes
[INFO ] : SWUPDATE running :  [install_single_image] : Installing baseos-6e-3.19.1-at.4
[INFO ] : SWUPDATE running :  [install_single_image] : Installing base_os post fixups
[INFO ] : SWUPDATE running :  [install_single_image] : Installing post_script
[INFO ] : SWUPDATE running :  [read_lines_notify] : Removing unused containers
[WARN ] : SWUPDATE running :  [read_lines_notify] : ----------------------------------------------
[WARN ] : SWUPDATE running :  [read_lines_notify] : WARNING: containers running on development storage, image removal only removes untagged images
[WARN ] : SWUPDATE running :  [read_lines_notify] : ----------------------------------------------
[INFO ] : SWUPDATE running :  [read_lines_notify] : swupdate triggering reboot!
Killed
/home/atmark # 

* ログイン後のwarningの内容

Last update on Tue Jun 11 14:11:17 JST 2024, updated:
  base_os: 3.18.5-at.8 -> 3.19.1-at.4
WARNING: This kernel requires modules, but modules were not found in /lib/modules/5.10.205-0-at.
WARNING: Please check your kernel installation or re-install default kernel with
WARNING: 'abos-ctrl restore-kernel'
コメント

at_reika.yamazaki

2024年6月12日 11時33分

お世話になっております。
山崎です。

warning 内容ですが、/lib/modules/5.10.205-0-at/ が見つからないという内容になります。
おそらくdtb を変更した際に "persist_file -P /boot" を実行したかと思われます。
現在、3.19.1-at.4 に swupdate していただいているので、最新の /lib/modules/5.10.218-0-at/ がインストールされている状態だと思います。

一点質問です。
「DTB を一部変更して利用していた」とありますが、変更したファイルと、参考にした手順について教えていただけますでしょうか?

以上。どうぞよろしくお願い致します。

yorikasa

2024年6月12日 13時05分

山崎さん

お世話になっております。
ご質問の内容について回答させていただきます。

> 現在、3.19.1-at.4 に swupdate していただいているので、最新の /lib/modules/5.10.218-0-at/ がインストールされている状態だと思います。

はい、インストールされています.

/home/atmark # ls /lib/modules
5.10.218-0-at

> 一点質問です。
> 「DTB を一部変更して利用していた」とありますが、変更したファイルと、参考にした手順について教えていただけますでしょうか?

変更したファイルと参考にした手順のURLを記載させていただきます。

・変更したファイル: /boot/armadillo-iotg-a6e.dtb
・参考にした手順: https://armadillo.atmark-techno.com/forum/armadillo/10684

改めてカーネルのページを確認したところ、カーネルが更新されておりました。
https://armadillo.atmark-techno.com/resources/software/armadillo-iot-a6…

現在動いているカーネル確認すると 205 のようなのですが、DTBについても作り直す必要ございますでしょうか?

/home/atmark # uname -a
Linux armadillo 5.10.205-0-at #1-Alpine Mon Dec 25 06:08:48 UTC 2023 armv7l Linux

at_reika.yamazaki

2024年6月12日 18時27分

お世話になっております。
山崎です。

回答ありがとうございます。
まず前提としてですが、毎月 Linux カーネルをセキュリティのため更新しています。そのためカーネルの更新を推奨しています。

通常では編集した DTB をそのまま使い続けることが可能ですが、まれに DTB にも修正が入ります。
そのため、DTB を直接変更するのではなく、DTBO (Device tree overlay) という仕組みを用いて、最新の DTB を使いながら変更した内容を活用する方が良いと思います。
overlay についてはこちらに説明がありますのでご参照ください。
https://manual.atmark-techno.com/armadillo-iot-a6e/armadillo-iotg-a6e_p…

また、拡張インターフェース(CON8) の変更を at-dtweb で簡単に dtbo の形で編集できますので、それでよろしければこちらもご確認ください。
https://manual.atmark-techno.com/armadillo-iot-a6e/armadillo-iotg-a6e_p…

今回の warning は、DTB だけではなくカーネル (/boot/uImage) も保存されたため、 persist_file -P でアップデートの際に armadillo 側のファイルが優先されたために起きたと思います。
"grep "POST /boot" /etc/swupdate_preserve_files" を実行して確認してみてください。その行で /boot/uImage と /lib/modules の齟齬が出ています。

修正については以下の流れになります。

1. warning にあるように "abos-ctrl restore-kernel" を実行して最新のカーネルに戻します。
このコマンドで編集した /boot/armadillo-iotg-a6e.dtb も標準の DTB に戻ります。
また、「POST /boot」の行も削除されるはずです。
2. DTB の変更を dtbo に変更できる場合は、変更した dtbo だけを保存してください。
DTB のままで使用する場合は DTB だけを戻して、その dtb ファイルを persist_file -P で保存してください。

ご不明な点がございましたらお尋ね下さい。
以上、どうぞよろしくお願いします。

yorikasa

2024年6月18日 11時45分

山崎さん

お世話になっております。
ご返信が遅くなりました。

私のご質問の回答と対応手順についてのご連絡ありがとうございました。
1.の手順を実施し警告が無くなることを確認しました。

Welcome to Alpine!
 
The Alpine Wiki contains a large amount of how-to guides and general
information about administrating Alpine systems.
See <http://wiki.alpinelinux.org/>.
 
Please note this system is READ-ONLY with a read-write overlayfs,
after updating password make sure to save new password with
# persist_file /etc/shadow
 
You can change this message by editing /etc/motd.
Last update on Thu Jun 13 08:41:54 JST 2024, updated:
 
armadillo:~$

2.については検討したく思います。