Armadilloフォーラム

開発機変更後、量産機へ再度イメージ書き込みを試みたが、エラーとなる

hiroki.nakatani

2025年3月25日 18時52分

==========
製品型番:Armadillo-IoT A6E
Debian/ABOSバージョン:3.21.3-at.1
カーネルバージョン:2020.4-at.25
3G/LTE モジュール情報 (Debianのみ):
その他:
==========

開発機変更後、量産機へ再度イメージ書き込みを行いたいです。
4.4.7. VS Code を使用して生成する
https://manual.atmark-techno.com/armadillo-iot-a6e/armadillo-iotg-a6e_p…
の作業を再度実施しているのですが、ABOS Webでのmake_installer_usb.swu インストール処理にて以下のエラーとなり、処理が進みません。
原因/対処を教えていただけないでしょうか。

▼エラーメッセージ
make_installer_usb.swu をインストールします。
SWU アップロード中に接続が切断されました。

SWUpdate v2024.12.0-git20250115-r0

Licensed under GPLv2. See source distribution for detailed copyright notices.

[INFO ] : SWUPDATE running : [print_registered_handlers] : no handler registered.
[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 make_installer_usb 2 (has 11)
[ERROR] : SWUPDATE failed [0] ERROR : ----------------------------------------------
[ERROR] : SWUPDATE failed [0] ERROR : /!\ Nothing to do -- failing on purpose to save bandwidth
[ERROR] : SWUPDATE failed [0] ERROR : ----------------------------------------------
[ERROR] : SWUPDATE failed [0] ERROR : Command failed: sh $1 /var/tmp/swupdate-abosweb-upload.gmjaOb/scripts_pre.sh
[ERROR] : SWUPDATE failed [0] ERROR : Error streaming enc.zst.scripts_pre.sh
swupdate_image_write failed: Connection reset by peer
[ERROR] : SWUPDATE failed [0] ERROR : SWUpdate *failed* !
swupdate exited

インストールが失敗しました。
swupdateが失敗した時のよくある原因とその対処方法は? をご参照ください。

コメント

at_reika.yamazaki

2025年3月25日 19時23分

お世話になっております。山崎です。
エラーの内容をみると、現在 Armadillo に書かれている make_installer_usb のバージョンが 11 で、それよりも古いバージョン 2 を書き込もうとしているため、エラーになっています。
現在 /etc/sw-versions には以下の記載があると思います。

make_installer_usb 11 

どうしても古いバージョン 2 をインストールしたい場合は、/etc/sw-versions ファイルを編集して書かれているバージョンを 1 以下にして保存してください。

make_installer_usb 1

上記修正後、make_installer_usb.swu をインストールしてみてください。
以上、どうぞよろしくお願いいたします。

hiroki.nakatani

2025年3月25日 19時37分

お世話になっております。

> エラーの内容をみると、現在 Armadillo に書かれている make_installer_usb のバージョンが 11 で、それよりも古いバージョン 2 を書き込もうとしているため、エラーになっています。
→先週同様な作業を行ったのですが、同じ作業を行うとバージョンが下がるのでしょうか。
 複製元で確認した結果は以下の通りバージョン11でした。

 armadillo:~# cat /etc/sw-versions
 base_os 3.21.3-at.2
 boot 2020.4-at.25
 extra_os.node-red 1.2
 extra_os.initial_setup 4
 make_installer_usb 11
 armadillo:~#

hiroki.nakatani

2025年3月25日 19時40分

念の為、複製先のArmadilloでも同様のコマンドを実行してみました。

armadillo:~# cat /etc/sw-versions
base_os 3.21.3-at.2
boot 2020.4-at25
extra_os.node-red 1.2
extra_os.initial_setup 4
armadillo:~#

at_reika.yamazaki

2025年3月26日 16時41分

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

>→先週同様な作業を行ったのですが、同じ作業を行うとバージョンが下がるのでしょうか。
> 複製元で確認した結果は以下の通りバージョン11でした。

今回ご案内した方法は一時的にバージョンを 1 以下に設定し、バージョン 2 のインストールを許可する方法です。
make_installer_usb.swu がバージョン 2 であれば、インストールに成功するとバージョン 2 が書き込まれます。

また、複製するタイミングでは make_installer_usb.swu が実行中のため、実行前のバージョンが複製先に渡ります。複製先に "make_installer_usb 11" がいないのは make_installer_usb.swu のインストール前だったからです。

もし、複製先に "make_installer_usb xxx" の記述を渡したくないという話であれば、複製元でこの行を削除してから make_installer_usb.swu のインストールを実行する必要があります。

以上、ひとまずのお返事になります。
どうぞよろしくお願いいたします。

hiroki.nakatani

2025年3月26日 17時14分

>今回ご案内した方法は一時的にバージョンを 1 以下に設定し、バージョン 2 のインストールを許可する方法です。
>make_installer_usb.swu がバージョン 2 であれば、インストールに成功するとバージョン 2 が書き込まれます。
→はい。こちらは理解できております。
 今回、①複製元:バージョン11、②複製先:バージョンなしの状況下でmake_installer_usb.swuを作成したのですが
 バージョン2のmake_installer_usb.swuは作成されることがあり得るのでしょうか。
 ①接続状態で作成すべきところ、誤って②で作成してしまったのではと懸念していたのですがそうでもなさそうでした。

 ①複製元で再度make_installer_usb.swuを作成する場合、手動書き換えで都度バージョン情報を削除 or バージョンアップさせないといけないものなのでしょうか。
 

at_reika.yamazaki

2025年3月26日 18時10分

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

> 今回、①複製元:バージョン11、②複製先:バージョンなしの状況下でmake_installer_usb.swuを作成したのですが
> バージョン2のmake_installer_usb.swuは作成されることがあり得るのでしょうか。
> ①接続状態で作成すべきところ、誤って②で作成してしまったのではと懸念していたのですがそうでもなさそうでした。

ABOSDE の「USBメモリにインストーラをを書き込む SWU を生成」の機能を使って生成されたものだと思います。
こちらは実行する度にバージョンをインクリメントするようになっています。
通常、こちらはコンソールが使用できない方に向けてインストールディスクイメージを吸い出すための SWU イメージになります。

> ①複製元で再度make_installer_usb.swuを作成する場合、手動書き換えで都度バージョン情報を削除 or バージョンアップさせないといけないものなのでしょうか。

手動で書き換えができる場合は、make_installer_usb.swu を用いず、コマンド実行でインストールディスクイメージを作成する方法もあります。

■ 4.4.6. 開発したシステムをインストールディスクにする
https://manual.atmark-techno.com/armadillo-iot-a6e/armadillo-iotg-a6e_p…

こちらで紹介されている「コマンドラインから生成」がそれにあたります。
下記のように USB メモリをマウントして、そちらにインストールディスクイメージを作成することが可能です。

mount /dev/sda1 /mnt
abos-ctrl make-installer --output /mnt/installer.img

こちらですと make_installer_usb のバージョン管理は不要になるので、ご希望に近いのではと思われます。
ご一考いただけますと幸いです。
以上、どうぞよろしくお願いいたします。

at_dominique.m…

2025年3月26日 18時29分

横からすみません、
マルティネです。

> > ①複製元で再度make_installer_usb.swuを作成する場合、手動書き換えで都度バージョン情報を削除 or バージョンアップさせないといけないものなのでしょうか。

山崎さんの案内通りにコマンドでインストーラーイメージを生成しても問題ないですが、この現象は分かりづらいと思いますので不具合扱いでいいと思います。
少し時間をいただきますが、4月末のアップデートで swu イメージを何回かインストールし直せる・バージョン情報がリセットされてもインストールできるようにします(そもそもバージョンを追加しない形になります)
それまでにバージョン削除などで対応していただければ幸いです。

その挙動でお手数をおかけしてすみませんでした。報告感謝します。

引き続きよろしくおねがいします

hiroki.nakatani

2025年3月26日 18時40分

> 山崎さんの案内通りにコマンドでインストーラーイメージを生成しても問題ないですが、この現象は分かりづらいと思いますので不具合扱いでいいと思います。
> 少し時間をいただきますが、4月末のアップデートで swu イメージを何回かインストールし直せる・バージョン情報がリセットされてもインストールできるようにします(そもそもバージョンを追加しない形になります)
> それまでにバージョン削除などで対応していただければ幸いです。
→ありがとうございます。お手数ですがよろしくお願いいたします。

>こちらで紹介されている「コマンドラインから生成」がそれにあたります。
>下記のように USB メモリをマウントして、そちらにインストールディスクイメージを作成することが可能です。
→こちらはArmadillo側にUSBメモリをマウントするのでしょうか。それともatde9側でよいでしょうか。

>4.4.9.3. インストールディスクイメージを生成する
>abos-ctrl make-installer コマンドを実行して、microSDカードにインストールディスクイメージを生成します。
あたりから試していたのですが、そもそもA6E WLANモデルだと、SDカードをマウントできず断念していました。

アットマークテクノの古賀です。

hiroki.nakataniさん:
>>こちらで紹介されている「コマンドラインから生成」がそれにあたります。
>>下記のように USB メモリをマウントして、そちらにインストールディスクイメージを作成することが可能です。
>→こちらはArmadillo側にUSBメモリをマウントするのでしょうか。それともatde9側でよいでしょうか。

Armadillo に USB メモリを装着・マウントしてください。
abos-ctrl make-installer コマンドは、--output オプションを指定しない場合、SD カードにインストールディスクイメージを書き込みますが、--ouput オプションを指定すると、指定したファイルにイメージを書き出すのです。

>>4.4.9.3. インストールディスクイメージを生成する
>>abos-ctrl make-installer コマンドを実行して、microSDカードにインストールディスクイメージを生成します。
>あたりから試していたのですが、そもそもA6E WLANモデルだと、SDカードをマウントできず断念していました。

そうですね。まさに、その問題を解決するために導入したのが、abos-ctrl make-installer コマンドの --output オプションなのです:
 https://armadillo.atmark-techno.com/news/20230328/software-update-aiota…

hiroki.nakatani

2025年3月26日 21時57分

古賀様

詳細説明ありがとうございます。
承知しました。今Armadilloが手元にないので明日試してみます。