ブログ

Armadillo-X1/IoT(G3/G3L):eMMCのパーティションを切りなおす方法(インストールディスクイメージ作成ツールを活用)

at_kazutaka.bito
2021年10月18日 9時41分

Armadillo-X1/IoT(G3/G3L)のeMMCのパーティションを切りなおす方法です。
ここでは、インストールディスクイメージを使ったインストール(※1)の際にパーティションを切りなおす方法をとります。
(以下、主にArmadillo-IoT(G3)の場合で説明しますが、Armadillo-X1/IoT(G3/G3L)は同じ手順になります。)
※1)
Armadillo-IoT ゲートウェイ G3製品マニュアル
11.1. インストールディスクを使用する


Armadillo-X1/IoT(G3/G3L)のeMMCのパーティションは標準では下記のようになっています。
Armadillo-IoT ゲートウェイ G3製品マニュアル
表3.10 eMMC メモリマップ (型番: AGX314* の場合)

デバイスサイズタイプ用途
/dev/mmcblk2p132MBytesFAT32Linux カーネルイメージ/Device Tree Blob
/dev/mmcblk2p2約3.4GBytesext4Debian GNU/Linux
/dev/mmcblk2p3128MBytesFAT32リカバリイメージ(node-eye使用時)

上記のパーティション構成を下記のように切りなおす例で説明します。

デバイスサイズタイプ用途
/dev/mmcblk2p132MBFAT32Linux カーネルイメージ/Device Tree Blob
/dev/mmcblk2p2約2.4GBext4Debian GNU/Linux
/dev/mmcblk2p3128MBFAT32リカバリイメージ(node-eye使用時)
/dev/mmcblk2p41GBext4(今回追加)

1. インストールディスクイメージ作成ツールの準備

ATDEに下記サイトより、インストールディスクイメージ作成ツール(make_install_disk_image-[version].tar.gz)を
ダウンロードします。
Armadillo-X1 開発用ツール
Armadillo-IoTゲートウェイ G3 開発用ツール
Armadillo-IoTゲートウェイ G3L 開発用ツール

下記マニュアル(※2)の
 1.必要なパッケージのインストール及び展開を行います。
の項目を参考に、ATDE上にインストールディスクイメージ作成ツールを展開します。

atmark@atde7:~$  sudo apt-get update && sudo apt-get install u-boot-tools
atmark@atde7:~$  tar xf make_install_disk_image-[version].tar.gz
atmark@atde7:~$  cd make_install_disk_image
atmark@atde7:~/make_install_disk_image$

※2)
Armadillo-IoT ゲートウェイ G3製品マニュアル
11.1.1. インストールディスクイメージの作成

2. パーティション構成の設定箇所の編集

インストールディスクイメージの作成ツール(make_install_disk_image)の
make_install_disk_image/core/images/install.sh
を下記のように編集します。
参考)
make_install_disk_image(v1.2.3)に下記編集を施したinstall.sh
install_20211015.sh

install.sh:8行目付近(パラメーターの追加)
末尾のPRI4_EMMC_PATH=${DEV_EMMC}p4の行を追加します。

#
# internal parameters
#
DEV_QSPI=/dev/mtdblock0
DEV_EMMC=/dev/mmcblk2
DEV_EMMC_BOOT=${DEV_EMMC}boot0
EMMC_BOOT_RO=/sys/block/mmcblk2boot0/force_ro
KERNEL_EMMC_PATH=${DEV_EMMC}p1
USERLAND_EMMC_PATH=${DEV_EMMC}p2
RECOVERY_EMMC_PATH=${DEV_EMMC}p3
PRI4_EMMC_PATH=${DEV_EMMC}p4

install.sh:71行目付近(パーティションの設定)
fdisk ${DEV_EMMC} <<EOFからEOFまでを下記のように編集します。

	fdisk ${DEV_EMMC} <<EOF
n
p
1

+32M
n
p
3

+128M
n
p
4

+1G
n
p



t
1
b
t
2
83
t
3
b
t
4
83
w
EOF

install.sh:102行目付近(ファイルシステムの設定)
末尾のmke2fs -t ext4 ${PRI4_EMMC_PATH}の行を追加します。

mkfs.vfat ${KERNEL_EMMC_PATH}
mke2fs -t ext4 ${USERLAND_EMMC_PATH}
mkfs.vfat ${RECOVERY_EMMC_PATH}
mke2fs -t ext4 ${PRI4_EMMC_PATH}

3. インストールイメージの作成とインストールの実行

上記マニュアル(※2)の
 2.ツールの使用方法を確認します。
以降の項目を参考に、インストールイメージを作成し、インストールを実行します。
ここでの例の場合、インストール後のパーティションは下記のようにmmcblk2p4が追加されています。

Device         Boot   Start     End Sectors   Size Id Type
/dev/mmcblk2p1           16   62591   62576  30.6M  b W95 FAT32
/dev/mmcblk2p2      2265856 7471103 5205248   2.5G 83 Linux
/dev/mmcblk2p3        62592  312639  250048 122.1M  b W95 FAT32
/dev/mmcblk2p4       312640 2265855 1953216 953.7M 83 Linux