Armadillo-X1, Armadillo-IoT G3/G3L(以下Armadillo)を使用したシステムの量産・開発の際は、インストールディスクを作成すると便利です。インストールディスクは、複数台のArmadilloに同じ環境を構築したり、リカバリーディスクとして使用したりなどの使い方ができます。
本記事では、インストールディスクを作成するためのインストールディスクイメージを作成するツールについて紹介します。
事前準備
以下を実行し、必要なコマンドをインストールしてください。
[PC ~]$ sudo apt install u-boot-tools
1. ツールのダウンロードと解凍
最初に、こちらからインストールディスクイメージ作成ツールをダウンロードしてください。
その後、ダウンロードしたmake_install_disk.tar.gzを解凍し、生成されたフォルダに移動してください。
[PC ~]$ ls make_install_disk.tar.gz make_install_disk.tar.gz [PC ~]$ tar -xf make_install_disk.tar.gz [PC ~]$ cd make_install_disk [PC ~/make_install_disk]$
2. 使用方法の確認
解凍したフォルダ内のbuild.shを以下のように実行すると、ツールの使用方法を確認することができます。
[PC ~/make_install_disk]$ sudo ./build.sh Usage: sudo ./build.sh BOARD UBOOT KERNEL DTB USERLAND BOARD: x1/iotg3/iotg3_m1/iotg3l UBOOT: u-boot image KERNEL: uImage DTB: Device Tree Blob image USERLAND: Debian userland archive
指定されている引数については、以下の表をご確認ください。
引数 | 説明 |
---|---|
BOARD | 利用中のArmadilloの種類を、x1, iotg3, itog3_m1, iotg3lから指定する |
UBOOT | ブートローダー |
KERNEL | Linuxカーネル |
DTB | Device Tree Brob |
USERLAND | Debian ユーザーランド |
これらのファイル(ブートローダー、Linuxカーネル、Device Tree Brob、ユーザーランド)は、以下のリンクからダウンロードすることができるほか、ユーザー自身で用意したファイルを使用することも可能です。
Armadillo-X1 製品ソフトウェア
Armadillo-IoTゲートウェイ G3 製品ソフトウェア
Armadillo-IoTゲートウェイ G3L 製品ソフトウェア
3. 実行
「2. 使用方法の確認」を参考に引数を指定し、管理者権限でbuild.shを実行してください
[PC ~/make_install_disk]$ sudo ./build.sh BOARD UBOOT KERNEL DTB USERLAND
以下に、Armadillo-X1用のインストールディスクイメージを作成した例を示します。
[PC ~/make_install_disk]$ sudo ./build.sh x1 u-boot-x1-at17.bin uImage-x1-v4.9-at3 armadillo_x1-v4.9-at3.dtb debian-stretch-armhf_ax1_20181030.tar.gz Image Name: Created: Thu Nov 15 15:54:00 2018 Image Type: ARM Linux Script (uncompressed) Data Size: 167 Bytes = 0.16 kB = 0.00 MB Load Address: 00000000 Entry Point: 00000000 Contents: Image 0: 159 Bytes = 0.16 kB = 0.00 MB 0+0 レコード入力 0+0 レコード出力 0 bytes copied, 6.6523e-05 s, 0.0 kB/s Welcome to fdisk (util-linux 2.29.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0xf7a08a85. Command (m for help): Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): Partition number (1-4, default 1): First sector (2048-854015, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-854015, default 854015): Created a new partition 1 of type 'Linux' and of size 13 MiB. Command (m for help): Partition type p primary (1 primary, 0 extended, 3 free) e extended (container for logical partitions) Select (default p): Partition number (2-4, default 2): First sector (28672-854015, default 28672): Last sector, +sectors or +size{K,M,G,T,P} (28672-854015, default 854015): Created a new partition 2 of type 'Linux' and of size 403 MiB. Command (m for help): Partition number (1,2, default 2): Partition type (type L to list all types): Changed type of partition 'Linux' to 'W95 FAT32'. Command (m for help): The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks. mkfs.fat 4.1 (2017-01-24) mke2fs 1.43.4 (31-Jan-2017) Discarding device blocks: done Creating filesystem with 412672 1k blocks and 103224 inodes Filesystem UUID: 098c113e-ba13-4d98-bd23-e23360f0cf7c Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409 Allocating group tables: done Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done 368+1 レコード入力 368+1 レコード出力 376936 bytes (377 kB, 368 KiB) copied, 0.0378821 s, 10.0 MB/s [PC ~/make_install_disk]$
実行が完了すると、日付及び指定したBOARD(Armadilloの種類)が記載されているインストールディスクイメージが生成されます。
[PC ~/make_install_disk]$ ls install_disk_sd_*.img install_disk_sd_20181116_x1.img
4. インストールディスクの作成
作成したインストールディスクイメージからインストールディスクを作成する方法については、以下をご参照ください。
Armadillo-X1 製品マニュアル「11.1. インストールディスクを使用する」
Armadillo-IoTゲートウェイ G3 製品マニュアル「11.1. インストールディスクを使用する」
Armadillo-IoTゲートウェイ G3L 製品マニュアル「6.2. ソフトウェアを初期化する」