m-h
2024年9月30日 10時32分
いつもお世話になっております。
表記の件につきまして、cliでインストールディスクイメージをswuファイルにする方法をご教授いただけますでしょうか。
インストールディスクについては、"abos-ctrl make-installer"コマンドを使用して作成しております。
マニュアルにVScodeで実行する手順の記載はありましたが、cliで実行する方法の記載がございませんでした。
お手数ですが、よろしくお願いいたします。
マニュアルの見落としがありましたら申し訳ございません。
コメント
太田様
ご回答ありがとうございます。
> VScodeで実行する手順というのは具体的にはマニュアルのどの節をご覧になれましたか?
> お教えいただけましたら幸いです。
[4.4.7. VSCode を使用して生成する]の項目からインストールディスクイメージをswuファイルにするものだと誤認しておりました。
申し訳ございません。
> インストールディスクイメージをswuファイルにする方法は現在提供しておりません。
こちら提供していただくことは可能でしょうか?
記載ないということは推奨されていないという事でしょうか。
以上、よろしくお願いいたいします。
at_satoshi.ohta
太田です。
ご返信有り難うございます。
> こちら提供していただくことは可能でしょうか?
> 記載ないということは推奨されていないという事でしょうか。
申し訳ありません。実装が簡単ではないのですぐに提供は出来ません。
こちらでは代替方法を案内させていただきます。
以下の方法は開発用のArmadillo上にあるコンテナイメージなどの必要なデータをswuイメージに含める方法です。
1. はじめにArmadilloにシリアルまたはsshでログインしてください。
2. 作成したコンテナイメージが存在するか確認します。
以下のコマンドをArmadilloのターミナル上で実行してください。
ここではコンテナイメージ名をmy_project とします。
armadillo:~# podman images REPOSITORY TAG IMAGE ID CREATED SIZE R/O my_project latest 76f9bbd7c78a 20 hours ago 436 MB true
3. Armadillo上のコンテナイメージをtarアーカイブに保存します。
以下のコマンドをArmadilloのターミナル上で実行してください。
armadillo:~# podman save -o my_project.tar my_project armadillo:~# ls my_project.tar
4. Armadillo上にある必要なデータをATDE上に転送します。
ここではUSBメモリを使用します。(scpなどでも問題ないです。)
また、ここではmy_project.tarとコンテナ自動起動ファイル(/etc/atmark/containers/my_project.tar)、ソースコードがあるディレクトリ(/var/app/rollback/volumes/my_project)が必要なデータとします。
USBをArmadilloに挿入後、以下のコマンドを実行してください。
(必要に応じてご使用の環境にあわせてください。)
armadillo:~# ls /dev/sda1 /dev/sda1 armadillo:~# mount -t vfat /dev/sda1 /mnt armadillo:~# ls my_project.tar armadillo:~# cp my_project.tar /mnt/ armadillo:~# cp /etc/atmark/containers/my_project.conf /mnt/ armadillo:~# cp -r /var/app/rollback/volumes/my_project /mnt/ armadillo:~# umount /mnt
USBメモリをローカルPCに挿入してATDE上にそれらのデータを保存してください。
ここでは、ATDEのホームディレクトリに保存したことにします。
5. swuイメージを作成するためにATDE上でdescファイルを作成します。
ここではdescファイル名をmy_project.descにします。
my_project.descに記述する内容の例を以下に示します。
swdesc_option component=my_project swdesc_option version=1 swdesc_files --extra-os --dest /etc/atmark/containers my_project.conf swdesc_files --dest /var/app/rollback/volumes/my_project my_project swdesc_embed_container "my_project.tar"
必要に応じてdescファイルの内容は修正してください。
実行できるコマンド例はマニュアルに記載がございますのでご参照ください。
https://manual.atmark-techno.com/armadillo-iot-a6e/armadillo-iotg-a6e_p…
6. descファイルからSWUイメージを作成します。
ATDE上のターミナルで以下のコマンドを実行してください。
atmark@atde9:~$ ls my_project my_project.conf my_project.desc my_project.tar atmark@atde9:~$ mkswu my_project.desc Enter pass phrase for /home/atmark/mkswu/swupdate.key: my_project.swu を作成しました。 atmark@atde9:~$ ls my_project my_project.conf my_project.desc my_project.swu my_project.tar
これにより、必要なデータを含むSWUイメージ(my_project.swu)が作成されます。
あとは、作成したSWUイメージをABOS Webなどで量産用のArmadilloにインストールした後に、想定する挙動をするか確かめていただければと思います。
手順が長くて申し訳ありません。
どうぞよろしくお願いいたします。
kirihara
本件について、質問させてください。
ちょうど、最新のArmadillo Base OSにて、インストール用イメージを作成しようとして、同じような問題にあたっておりました。
"4.4.7. VSCode を使用して生成する"
を参照しているのですが、VScodeの拡張機能の使用に制約があるため、VScodeを用いない方法を探しております。
(AG6211、AG6271を使用しており、"4.4.9 コマンドラインから作成する"の方法もできませんでした。)
"4.4.7.1. VSCode を使用したインストールディスク作成用 SWU の生成"に記載されている、
"make-installer.swu"をコマンドラインで作成できれば、その後は問題ないと考えているのですが、
こちらを行う方法が無い…という認識でよいでしょうか。
もしくは、以前のArmadillo Base OSであれば、USBメモリに直接、"abos-ctrl make-installer --output /mnt/a6e-bto-installer.img"コマンドで、
イメージファイルを書き出せたのですが、この方法はもう使用できないのでしょうか。
(試したのですが、エラーコードがでてしまいました。)
よろしくお願いいたします。
at_satoshi.ohta
太田です。
> 4.4.7.1. VSCode を使用したインストールディスク作成用 SWU の生成"に記載されている、
> "make-installer.swu"をコマンドラインで作成できれば、その後は問題ないと考えているのですが、
> こちらを行う方法が無い…という認識でよいでしょうか。
"make-installer.swu"をコマンドラインで行う方法もありますが、"make-installer.swu"で実行しているのはabos-ctrl make-installerコマンドです。
そのため、ABOSDEを使用できない環境であれば、SSHやコンソールでArmadilloにログインした後、abos-ctrl make-installerコマンドを実行する方が簡単だと思います。
("make-installer.swu"はマニュアルの誤記であり、正しくは"make_installer_usb.swu"でした。今月修正します。)
> もしくは、以前のArmadillo Base OSであれば、USBメモリに直接、"abos-ctrl make-installer --output /mnt/a6e-bto-installer.img"コマンドで、
> イメージファイルを書き出せたのですが、この方法はもう使用できないのでしょうか。
>(試したのですが、エラーコードがでてしまいました。)
使用できるはずです。
よろしければ、実行時のエラーの内容を教えていただければ幸いです。
よろしくお願いいたします。
at_satoshi.ohta
kirihara
> > もしくは、以前のArmadillo Base OSであれば、USBメモリに直接、"abos-ctrl make-installer --output /mnt/a6e-bto-installer.img"コマンドで、
> > イメージファイルを書き出せたのですが、この方法はもう使用できないのでしょうか。
> >(試したのですが、エラーコードがでてしまいました。)
>
> 使用できるはずです。
> よろしければ、実行時のエラーの内容を教えていただければ幸いです。
>
お世話になります。
まだ確認しきれておらず、途中経過です。
エラー発生時のArmadillo(自作コンテナを追加したり、ネットワーク設定をいじったもの)が手元に無かったため、
とりあえず別のArmadillo(新品にinitのswuファイルだけ当てたもの)で試してみました。
→この場合にはimgファイルの出力に成功しました。
エラー発生時の内容を確認次第、また共有させていただきます。
kirihara
>
> > > もしくは、以前のArmadillo Base OSであれば、USBメモリに直接、"abos-ctrl make-installer --output /mnt/a6e-bto-installer.img"コマンドで、
> > > イメージファイルを書き出せたのですが、この方法はもう使用できないのでしょうか。
> > >(試したのですが、エラーコードがでてしまいました。)
> >
> > 使用できるはずです。
> > よろしければ、実行時のエラーの内容を教えていただければ幸いです。
> >
>
> お世話になります。
>
> まだ確認しきれておらず、途中経過です。
>
> エラー発生時のArmadillo(自作コンテナを追加したり、ネットワーク設定をいじったもの)が手元に無かったため、
> とりあえず別のArmadillo(新品にinitのswuファイルだけ当てたもの)で試してみました。
> →この場合にはimgファイルの出力に成功しました。
>
> エラー発生時の内容を確認次第、また共有させていただきます。
お世話になります。
本件ですが、自作のpodmanイメージファイルを追加した状態ですと、imgの出力に失敗しました。
出力時の表示は以下のとおりです。
どのような原因が考えられますでしょうか。
(なお、出力先のUSBメモリはFAT32で使用しており、空き容量は18GB程度です。)
armadillo:~# ping -c 3 pong.soracom.io PING pong.soracom.io (100.127.100.127): 56 data bytes 64 bytes from 100.127.100.127: seq=0 ttl=63 time=41.997 ms 64 bytes from 100.127.100.127: seq=1 ttl=63 time=53.629 ms 64 bytes from 100.127.100.127: seq=2 ttl=63 time=53.289 ms --- pong.soracom.io ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 41.997/49.638/53.629 ms armadillo:~# armadillo:~# podman images REPOSITORY TAG IMAGE ID CREATED SIZE R/O localhost/app 1.0.2.3 21eb9b35b431 4 weeks ago 951 MB true localhost/reboot latest a5bf4aa3e03c 12 months ago 4.99 MB true armadillo:~# armadillo:~# mount /dev/sda1 /mnt armadillo:~# abos-ctrl make-installer --output /mnt/a6e-bto-installer.img Checking if /mnt/a6e-bto-installer.img-in-progress can be used safely... An installer system is already available on image file. Use it? [Y/n] Y Would you like to create a windows partition? That partition would only be used for customization script at the end of install, leave at 0 to skip creating it. Custom partition size (MB, [0] or 16 - 350): 0 Checking and growing installer main partition Resize device id 1 (/dev/loop0p1) from 517.00MiB to max Copying boot image Copying rootfs ERROR: e2fsck failed for rootfs, aborting: e2fsck 1.47.0 (5-Feb-2023) Warning! /dev/mmcblk0p1 is in use. Pass 1: Checking inodes, blocks, and sizes Inodes that were part of a corrupted orphan linked list found. Fix? no Inode 35329 was part of the orphaned inode list. IGNORED. Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information rootfs_0: ********** WARNING: Filesystem still has errors ********** rootfs_0: 4094/76912 files (0.4% non-contiguous), 170854/307200 blocks Terminating, cleaning up... armadillo:~#
at_satoshi.ohta
太田です。
こちらの以前投稿されたフォーラムでも同様のエラーが発生しているようにみえます。
https://armadillo.atmark-techno.com/forum/armadillo/22110
armadillo:~# abos-ctrl rollback-clone && abos-ctrl rollback --reboot
を実行した後、もう一度"abos-ctrl make-installer"コマンドを実行してみていただいてもよろしいでしょうか?
どうぞよろしくお願いいたします。
kirihara
at_satoshi.ohta
2024年10月1日 13時25分
太田です。
申し訳ありません。
インストールディスクイメージをswuファイルにする方法は現在提供しておりません。
VScodeで実行する手順というのは具体的にはマニュアルのどの節をご覧になれましたか?
お教えいただけましたら幸いです。
どうぞよろしくお願いいたします。