本章では、SDカードから直接起動(以降「SDブート」と表記します)する手順を示します。SDブートを活用すると、SDカードを取り替えることでシステムイメージを変更することができます。本章に示す手順を実行するためには、容量が2GByte 以上のSD カードを必要とします。以下では、例としてDebian GNU/Linux 9(コードネーム stretch)をSDブートする手順を示しますが、他のOSをSDブートすることも可能です。
| |
---|
SDブートを行った場合、ブートローダーの設定はSDカードに保存されます。
|
SDカードに対する作業は、ATDEで行います。そのため、ATDEにSDカードを接続する必要があります。詳しくは「取り外し可能デバイスの使用」を参照してください。
ATDEにSDカードを接続すると、自動的に/media/ ディレクトリにマウントされます。本章に記載されている手順を実行するためには、次のようにSDカードをアンマウントしておく必要があります。
本章で使用する最新版のイメージファイルは、"Armadillo サイト"でダウンロードすることができます。新機能の追加や不具合の修正などが行われているため、最新バージョンを利用することを推奨します。
ATDEでブートディスクを作成します。ブートディスクの作成に使用するファイルを次に示します。
表14.1 ブートディスクの作成に使用するファイル ファイル | ファイル名 |
---|
ブートローダーイメージ | u-boot-x1-[version] .bin |
| |
---|
u-boot-x1-at16 より、SPIフラッシュメモリ用とSD/eMMC用のイメージは統合されました。
|
表14.2「ブートディスクの構成例」に示すブートディスクを作成する手順を、手順14.1「ブートディスクの作成例」に示します。
表14.2 ブートディスクの構成例 パーティション番号 | パーティションサイズ | ファイルシステム | 説明 |
---|
1 | 128MByte | FAT32 | ブートローダーイメージを配置します。 | 2 | 残り全て | ext4 | ルートファイルシステムを構築するためにext4ファイルシステムを構築しておきます。 |
手順14.1 ブートディスクの作成例
SDブート用のブートローダーイメージファイルを取得します。
SDカードに2つのプライマリパーティションを作成します。
パーティションリストを表示し、2つのパーティションが作成されていることを確認してください。
それぞれのパーティションにファイルシステムを構築します。
SDブート用のブートローダーイメージファイルをSDカードに書き込みます。
「ブートディスクの作成」で作成したブートディスクにルートファイルシステムを構築します。
Debian GNU/Linuxのルートファイルシステムを構築することができます。ルートファイルシステムの構築に使用するファイルを次に示します。
表14.3 ルートファイルシステムの構築に使用するファイル Linuxディストリビューション | ファイル名 | ファイルの説明 |
---|
Debian GNU/Linux | debian-stretch-armhf_ax1_[version] .tar.gz | ARM(armhf)アーキテクチャ用 Debian GNU/Linux 9(コードネーム stretch)のルートファイルシステムアーカイブ |
14.2.1. Debian GNU/Linuxのルートファイルシステムを構築する
Debian GNU/Linuxルートファイルシステムアーカイブから、ルートファイルシステムを構築する手順を次に示します。
手順14.2 Debian GNU/Linuxルートファイルシステムアーカイブからルートファイルシステムを構築する
Debian GNU/Linuxルートファイルシステムアーカイブを準備しておきます。
ルートファイルシステムをブートディスクの第2パーティションに構築します。
| |
---|
アンマウントが完了する前にSDカードを作業用PCから取り外すと、SDカードのデータが破損する場合があります。
|
14.3. LinuxカーネルイメージとDTBの配置
「ブートディスクの作成」で作成したブートディスクにLinuxカーネルイメージおよびDTB(Device Tree Blob)を配置します。使用するファイルを次に示します。以降、DTB(Device Tree Blob)をDTBと表記します。
表14.4 ブートディスクの作成に使用するファイル ファイル | ファイル名 |
---|
Linuxカーネルイメージ | uImage-x1-[version] | DTB | armadillo_x1-[version] .dtb |
SDカードにLinuxカーネルイメージおよびDTBを配置する際は、次の条件を満たすようにしてください。この条件から外れた場合、ブートローダーがLinuxカーネルイメージまたはDTBを検出することができなくなる場合があります。
表14.5 ブートローダーがLinuxカーネルを検出可能な条件 項目 | 条件 |
---|
ファイルシステム | FAT32 | 圧縮形式 | 非圧縮 | Linuxカーネルイメージファイル名 | uImage | DTBファイル名 | armadillo_x1.dtb |
LinuxカーネルイメージおよびDTBをブートディスクに配置する手順を次に示します。
手順14.3 LinuxカーネルイメージおよびDTBの配置
LinuxカーネルイメージおよびDTBを準備しておきます。
Linuxカーネルイメージをブートディスクの第1パーティションに配置します。
| |
---|
アンマウントが完了する前にSDカードを作業用PCから取り外すと、SDカードのデータが破損する場合があります。
|
「ブートディスクの作成」で作成したブートディスクから起動する方法を説明します。
Armadilloに電源を投入する前に次の準備を行います。
ブートディスクを接続したSDスロット拡張ボードを、CON7 アドオンインターフェースに接続します。
「インターフェース仕様」を参照してSDスロット拡張ボードのSW1を「SD BOOT」に設定します。
準備が完了後、電源を投入するとSDブートさせることができます。SDブートに成功した場合、図14.2「SDブート時の起動ログ」のように「Boot Source: SD」と表示されます。
| |
---|
U-Boot v2016.07-at4(イメージファイル名: u-boot-x1-at4.bin)以前をご利用の場合、Boot Sourceは表示されません。
|
| |
---|
SDカードのライトプロテクションスイッチは無効にしてください。SDカードに書き込みが出来ない場合、SDブートを正常に行うことができません。
|
ログイン後、df コマンドを実行するとルートファイルシステムが/dev/mmcblk0p2 (SDカード: パーティション2)になっていることがわかります。
| |
|