Armadillo-X1/IoT(G3/G3L)のeMMCのパーティションを5つ以上に切りなおす方法です。
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/mmcblk2p1 | 32MBytes | FAT32 | Linux カーネルイメージ/Device Tree Blob |
/dev/mmcblk2p2 | 約3.4GBytes | ext4 | Debian GNU/Linux |
/dev/mmcblk2p3 | 128MBytes | FAT32 | リカバリイメージ(node-eye使用時) |
上記のパーティション構成を下記のように切りなおす例で説明します。
デバイス | サイズ | タイプ | 用途 |
/dev/mmcblk2p1 | 32MB | FAT32 | Linux カーネルイメージ/Device Tree Blob |
/dev/mmcblk2p2 | 約2.4GB | ext4 | Debian GNU/Linux |
/dev/mmcblk2p3 | 128MB | FAT32 | リカバリイメージ(node-eye使用時) |
/dev/mmcblk2p4 | (以下、合計1GB分を確保) | (Extended) | 拡張パーティション(今回追加) |
/dev/mmcblk2p5 | 64M | ext4 | 論理パーティション(今回追加) |
/dev/mmcblk2p6 | 256M | FAT32 | 論理パーティション(今回追加) |
/dev/mmcblk2p7 | 約680M | ext4 | 論理パーティション(今回追加) |
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_20211025.sh
install.sh:8行目付近(パラメーターの追加)
末尾にPRI4_EMMC_PATH=${DEV_EMMC}p4以降の4行を追加します。
# # 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 EXT5_EMMC_PATH=${DEV_EMMC}p5 EXT6_EMMC_PATH=${DEV_EMMC}p6 EXT7_EMMC_PATH=${DEV_EMMC}p7
install.sh:71行目付近(パーティションの設定)
fdisk ${DEV_EMMC} <<EOFからEOFまでを下記のように編集します。
fdisk ${DEV_EMMC} <<EOF n p 1 +32M n p 3 +128M n e 4 +1G n l +64M n l +256M n l n p t 1 b t 2 83 t 3 b t 5 83 t 6 b t 7 83 w EOF
install.sh:102行目付近(ファイルシステムの設定)
末尾にmke2fs -t ext4 ${EXT5_EMMC_PATH}以降の3行を追加します。
mkfs.vfat ${KERNEL_EMMC_PATH} mke2fs -t ext4 ${USERLAND_EMMC_PATH} mkfs.vfat ${RECOVERY_EMMC_PATH} mke2fs -t ext4 ${EXT5_EMMC_PATH} mkfs.vfat ${EXT6_EMMC_PATH} mke2fs -t ext4 ${EXT7_EMMC_PATH}
3. インストールイメージの作成とインストールの実行
上記マニュアル(※2)の
2.ツールの使用方法を確認します。
以降の項目を参考に、インストールイメージを作成し、インストールを実行します。
ここでの例の場合、インストール後のパーティションは下記のように拡張パーティション(mmcblk2p4)に、
3つの論理パーティション(mmcblk2p5~7)が追加されています。
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 5 Extended /dev/mmcblk2p5 312656 437695 125040 61.1M 83 Linux /dev/mmcblk2p6 437712 937791 500080 244.2M b W95 FAT32 /dev/mmcblk2p7 937808 2265855 1328048 648.5M 83 Linux