Armadilloフォーラム

initial_setup実行時にpersist_file -Pで設定したディレクトリ・ファイルが/etc/swupdate_preserve_filesに登録されていない

yorikasa

2025年7月15日 22時04分

==========
製品型番:AG6221
ABOSバージョン:3.21.3-at.14
カーネルバージョン:Linux armadillo 5.10.238-0-at #1-Alpine Tue Jun 24 04:34:00 UTC 2025 armv7l Linux
3G/LTE モジュール情報 (Debianのみ):
その他:
==========

初歩的なご質問になってしまい恐縮ですが、persist_fileの挙動について確認させてください。

「6.2. persist_file について」の「2. ソフトウェアアップデート後も変更を維持する手順例」に、-Pオプションを利用した例があると思います。
こちら、Armadilloのinitial_setup後、ログインして実行すると「/etc/swupdate_preserve_files」に対して、POSTしたいファイル・ディレクトリが登録できていることを確認できております。
※参照した取り扱い説明書: https://armadillo.atmark-techno.com/files/downloads/armadillo-iot-a6e/d…

例として、/tmp_aaaをPOSTされるようにinitial_setupで対応したい場合、initial_setup.desc等のdescファイルに対して、以下のように定義すれば良い物と考えておりましたが、initial_setup実施後に「/etc/swupdate_preserve_files」を見ると/tmp_aaaが登録(追記)されていないのですが、これは仕様でしょうか?

swdesc_command --extra-os "persist_file -P /tmp_aaa"

/tmp_aaa をdescファイルで登録した後、BaseOSだけをアップデートしたい時などにご提供いただいている「Armadillo-IoT ゲートウェイA6E用 SWUイメージファイル」を用いてBaseOSをアップデートすると、/tmp_aaaが消えてしまうことがあったため確認でした。

ご確認の程よろしくお願いいたします。

コメント

at_satoshi.ohta

2025年7月16日 13時41分

太田です。

ATDE の /usr/share/mkswu/examples/update_preserve_files.sh というスクリプトを使用すると /etc/swupdate_preserve_files に追記できます。
以下のようにまず、desc ファイルのあるディレクトリに update_preserve_files.sh をコピーします。

atmark@atde9:~/mkswu$ cp  /usr/share/mkswu/examples/update_preserve_files.sh .

例えば、tmp_aaa というファイルを Armadillo の / にコピーする場合、desc ファイルには以下のように記述してください。

swdesc_files --extra-os --dest / tmp_aaa
swdesc_script --extra-os "update_preserve_files.sh" -- "POST /tmp_aaa"

お試しいただけますでしょうか?

どうぞよろしくお願いいたします。

太田さん

対処方法についてありがとうございました。
descで対応する場合「persist_file -P」では、登録されないということで理解いたしました。
確認が出来次第、ご報告させていただきます。

太田さん

期待通りPOSTで登録されることを確認しました。
ありがとうございます。

[2025-07-17 11:33:05.335] # v14 list
[2025-07-17 11:33:05.335] /etc/runlevels/boot/sim7672-boot
[2025-07-17 11:33:05.342] POST /tmp_aaa