# SDカードからLinuxオペレーティングシステムを起動する

Qualcomm開発キットはSDカードから起動できます。

`EFI.bin` と `system.img` でフラッシュしてSDカードを準備します。準備したSDカードを開発キットのSDカードスロットに挿入します。開発キットはSDカードから起動します。SDカードには、継続的な動作を保証するために、バックアップ用または冗長用のオペレーティングシステムが含まれています。

Qualcomm 開発キットを SD カードから起動するには、以下の手順に従います。

1. SDカードをQualcomm開発キットに挿入します。挿入したSDカードのデバイスノードを確認します（例：`/dev/mmcblk1` または `/dev/mmcblk2`）。
2. SDカードをフォーマットするには、UARTシェルで `mkfs.ext4 <sdcard slot>` コマンドを実行します。

    以下の例では、SDカードのdevノードは `/dev/mmcblk1` です。

mkfs.ext4 /dev/mmcblk1
        Copy to clipboard

    出力：

mke2fs 1.46.5 (30-Dec-2021)
        Found a dos partition table in /dev/mmcblk1
        Proceed anyway? (y,N) y
        Discarding device blocks: done
        Creating filesystem with 3889536 4k blocks and 972944 inodes
        Filesystem UUID: 069e04f8-0b72-4a94-aa93-f5ec03bea38d
        Superblock backups stored on blocks:
           32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
        
        Allocating group tables: done
        Writing inode tables: done
        Creating journal (16384 blocks): done
        Writing superblocks and filesystem accounting information: done
        Copy to clipboard
3. `fdisk` コマンドを使用して、SDカード上に2つのパーティションを作成した後、`efi.bin` と `system.img` をコピーします。

    1. 1 つ目のパーティションを `vfat` ファイルシステムで作成した後、`efi.bin` をコピーします。

        パーティションを作成するには、以下のコマンドを実行します（例では、devノードは `/dev/mmcblk1` とします）。

fdisk /dev/mmcblk1
            Copy to clipboard

        出力：

Welcome to fdisk (util-linux 2.37.4).
            Changes will remain in memory only, until you decide to write them.
            Be careful before using the write command.
            
            The device contains 'ext4' signature and it will be removed by a write command.
            See fdisk(8) man page and --wipe option for more details.
            
            Device doesn't contain a recognized partition table.
            Created a new DOS disklabel with disk identifier 0xa5fa6b03.
            
            Command (m for help): n
            Partition type
               p   primary (0 primary, 0 extended, 4 free)
               e   extended (container for logical partitions)
            Select (default p): p
            Partition number (1-4, default 1): 1
            First sector (2048-31116287, default 2048):
            Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-31116287, default 31116287): +512M
            
            Created a new partition 1 of type 'Linux' and of size 512 MiB.
            
            Command (m for help): w
            The partition table has been altered.
            Calling ioctl() to re-read partition table.
            Syncing disks.
            Copy to clipboard

        パーティションを `vfat` ファイルシステムに変換するには、以下のコマンドを実行します。

mkfs.vfat /dev/mmcblk1p1
            Copy to clipboard

        出力：

mkfs.fat 4.2 (2021-01-31)
            Copy to clipboard

注釈

この例では、`First sector` フィールドは空欄のままにしておき、`Last sector` には `efi.bin` をコピーするための十分な容量を確保しています。
    2. 2 つ目のパーティションを `ext4` ファイルシステムとして作成した後、以下のように `system.img` をコピーします。

        パーティションを作成するには、以下のコマンドを実行します（例では、devノードは `/dev/mmcblk1` とします）。

fdisk /dev/mmcblk1
            Copy to clipboard

        出力：

Welcome to fdisk (util-linux 2.37.4).
            Changes will remain in memory only, until you decide to write them.
            Be careful before using the write command.
            
            Command (m for help): n
            Partition type
               p   primary (1 primary, 0 extended, 3 free)
               e   extended (container for logical partitions)
            Select (default p): p
            Partition number (2-4, default 2): 2
            First sector (1050624-31116287, default 1050624):
            Last sector, +/-sectors or +/-size{K,M,G,T,P} (1050624-31116287, default 31116287): +10G
            
            Created a new partition 2 of type 'Linux' and of size 10 GiB.
            
            Command (m for help): w
            The partition table has been altered.
            Calling ioctl() to re-read partition table.
            Syncing disks.
            Copy to clipboard

        パーティションを `ext4` ファイルシステムに変換するには、以下のコマンドを実行します。

mkfs.ext4 /dev/mmcblk1p2
            Copy to clipboard

        出力：

mke2fs 1.46.5 (30-Dec-2021)
            Discarding device blocks: done
            Creating filesystem with 2621440 4k blocks and 655360 inodes
            Filesystem UUID: 9e470d01-77fe-4382-a273-ab8b022bdd8b
            Superblock backups stored on blocks:
                     32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
            
            Allocating group tables: done
            Writing inode tables: done
            Creating journal (16384 blocks): done
            Writing superblocks and filesystem accounting information: done
            Copy to clipboard

> 
> 
> 注釈
> 
> 
> この例では、`First sector` フィールドは空欄のままにしておき、`Last sector` には `system.img` をコピーするための十分な容量を確保しています。
4. 以下のようにして、作成されたパーティションを確認します。

lsblk -f /dev/mmcblk1
        Copy to clipboard

    出力：

NAME FSTYPE FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
        mmcblk1
        |
        |-mmcblk1p1
        |    vfat               1EAC-8FF8
        `-mmcblk1p2
             ext4               9e470d01-77fe-4382-a273-ab8b022bdd8b
        Copy to clipboard
5. scp コマンドを使用して、`efi.bin` と `system.img` をホスト・コンピューターの正常にビルドされた Qualcomm Linux イメージからデバイスにコピーします。

scp -r <efi.bin> <IP_address>:<path>
        scp -r <system.img> <IP_address>:<path>
        Copy to clipboard
6. `efi.bin` と `system.img` をデバイスからSDカードのパーティションにコピーするには、デバイスで以下のコマンドを実行します。

    - `dd if=<path>/efi.bin of=<sdcard slot> bs=4M`
    - `dd if=<path>/system.img of=<sdcard slot> bs=4M`

    デバイスの `/tmp` パスから両方のイメージをSDカードにコピーする例を以下に示します。

dd if=/tmp/efi.bin of=/dev/mmcblk1p1 bs=4M
        
        dd if=/tmp/system.img of=/dev/mmcblk1p2 bs=4M
        Copy to clipboard

注釈

このコマンドでは、SDカードのdevノードは `/dev/mmcblk1` です。
7. SD カードは、イメージから起動する準備が整っています。UFS または eMMC 上の EFI パーティションが破損した場合、または systemd-boot が失敗した場合に、デバイスは SD カードから起動し、継続的な動作を保証します。

Last Published: Dec 23, 2025

[Previous Topic
Qualcomm Linux用OTAアップデート](https://docs.qualcomm.com/bundle/publicresource/80-70020-27JA/topics/ota_update_for_qualcomm_linux.md) [Next Topic
efivar ツールを使用して UEFI 環境変数を管理する](https://docs.qualcomm.com/bundle/publicresource/80-70020-27JA/topics/manage_uefi_environment_variables_using_efivar_tool.md)