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. ソフトウェアを初期化する」