本章では、SDカードから直接起動(以降「SDブート」と表記します)する手順を示します。SDブートを活用すると、SDカードを取り替えることでシステムイメージを変更することができます。本章に示す手順を実行するためには、容量が2GByte 以上のSD カードを必要とします。以下では、例としてDebian GNU/Linux 7(コードネーム wheezy)をSDブートする手順を示しますが、他のOSをSDブートすることも可能です。
| |
---|
SDブートを行った場合でも、ブートローダーの設定(保守モードのsetenv/setboodeviceコマンドで設定する項目)についてはSPIフラッシュメモリに保存されます。
|
SDカードに対する作業は、ATDEで行います。そのため、ATDEにSDカードを接続する必要があります。詳しくは「取り外し可能デバイスの使用」を参照してください。
ATDEにSDカードを接続すると、自動的に/media/ ディレクトリにマウントされます。本章に記載されている手順を実行するためには、次のようにSDカードをアンマウントしておく必要があります。
本章で使用するブートローダーイメージファイルなどは、評価セット付属の DVD に収録されています。最新版のファイルは、"Armadillo サイト"でダウンロードすることができます。新機能の追加や不具合の修正などが行われているため、DVD に収録されているものよりも新しいバージョンがリリースされているかを確認して、最新バージョンのソースコードを利用することを推奨します。
ATDEでブートディスクを作成します。ブートディスクの作成に使用するファイルを次に示します。
表10.1 ブートディスクの作成に使用するファイル ファイル | ファイル名 |
---|
SDブート用ブートローダーイメージ | loader-armadilloeva1500-[version] .bin |
SDカードにブートローダーイメージを配置する際、表10.2「ブートディスクの制約」に示す制約があります。本章に示す手順を実行した場合は問題になることはありませんが、独自のブートディスクを作成する場合は注意してください。
表10.2 ブートディスクの制約 項目 | 制約 |
---|
パーティション番号 | 1 | パーティションのシステムタイプ | 0x83(Linux) | ファイルシステム | ext2 | ブートローダーイメージファイル名 | sdboot.bin | ブートローダーイメージファイルの配置場所 | ルートディレクトリ直下 |
表10.3「ブートディスクの構成例」に示すブートディスクを作成する手順を、手順10.1「ブートディスクの作成例」に示します。
表10.3 ブートディスクの構成例 パーティション番号 | パーティションサイズ | ファイルシステム | 説明 |
---|
1 | 128MByte | ext2 | ブートローダーイメージを配置します。 | 2 | 残り全て | ext3 | ルートファイルシステムを構築するためにext3ファイルシステムを構築しておきます。 |
手順10.1 ブートディスクの作成例
SDブート用のブートローダーイメージファイルを取得します。
SDカードに2つのプライマリパーティションを作成します。
パーティションリストを表示し、2つのパーティションが作成されていることを確認してください。
それぞれのパーティションにファイルシステムを構築します。
SDブート用のブートローダーイメージファイルを第1パーティションに配置します。
| |
---|
アンマウントが完了する前にSDカードを作業用PCから取り外すと、SDカードのデータが破損する場合があります。
|
「ブートディスクの作成」で作成したブートディスクにルートファイルシステムを構築します。ルートファイルシステムの構築に使用するファイルを次に示します。
表10.4 ルートファイルシステムの構築に使用するファイル Linuxディストリビューション | ファイル名 | ファイルの説明 |
---|
Debian GNU/Linux | debian-wheezy-ae1500-[version] .tar.gz | ARM(armhf)アーキテクチャ用 Debian GNU/Linux 7(コードネーム 「wheezy」)のルートファイルシステムアーカイブ |
Debian GNU/Linuxルートファイルシステムアーカイブから、ルートファイルシステムを構築する手順を次に示します。
手順10.2 Debian GNU/Linuxルートファイルシステムアーカイブからルートファイルシステムを構築する
Debian GNU/Linuxルートファイルシステムアーカイブを準備しておきます。
ルートファイルシステムをブートディスクの第2パーティションに構築します。
| |
---|
アンマウントが完了する前にSDカードを作業用PCから取り外すと、SDカードのデータが破損する場合があります。
|
標準イメージのDebian GNU/Linux 7 ルートファイルシステムは、eMMC パーティション1 をルートファイルシステムとして使用するように設定されています。ルートファイルシステムの配置先を変更する場合は、fstabの設定を修正する必要があります。fstabの設定を、表10.5「ディスクデバイスの割り当て」 を参考に修正します。この例では、SDスロット1(CON6)に接続したSDカードのパーティション2をルートファイルシステムとして使用するように、"/dev/mmcblk0p1"から"/dev/mmcblk1p2"に書き換えています。
表10.5 ディスクデバイスの割り当て インターフェース | ディスクデバイス |
---|
eMMC | /dev/mmcblk0 | SDスロット1(CON6) | /dev/mmcblk1 | SDスロット2(CON4) | /dev/mmcblk2 |
「ルートファイルシステムの構築」で作成したルートファイルシステムにLinuxカーネルイメージを配置します。Linuxカーネルイメージの配置に使用するファイルを次に示します。
表10.6 ブートディスクの作成に使用するファイル ファイル | ファイル名 |
---|
Linuxカーネルイメージ | linux-ae1500-[version] .bin |
SDカードにLinuxカーネルイメージを配置する際は、次の条件を満たすようにしてください。この条件から外れた場合、ブートローダーがLinuxカーネルイメージを検出することができなくなる場合があります。
表10.7 ブートローダーがLinuxカーネルを検出可能な条件 項目 | 条件 |
---|
ファイルシステム | ext2 または ext3 | 圧縮形式 | gzip形式 または 非圧縮 | Linuxカーネルイメージファイル名(gzip形式) | Image.gz , linux.gz , Image.bin.gz , linux.bin.gz のいずれか | Linuxカーネルイメージファイル名(非圧縮) | Image , linux , Image.bin , linux.bin のいずれか | Linuxカーネルイメージファイルの配置場所 | /boot/ ディレクトリ直下 |
Linuxカーネルイメージをルートファイルシステムに配置する手順を次に示します。
手順10.3 Linuxカーネルイメージの配置例
Linuxカーネルイメージを準備しておきます。
Linuxカーネルイメージをブートディスクの第2パーティションに配置します。
| |
---|
アンマウントが完了する前にSDカードを作業用PCから取り外すと、SDカードのデータが破損する場合があります。
|
「ブートディスクの作成」で作成したブートディスクから起動する方法を説明します。
Armadilloに電源を投入する前に次の準備を行います。
| |
---|
SDブートを行う場合は、SD インターフェース(CON6)もしくはSD インターフェース(CON4)の、どちらか一方にだけSDカードを接続してください。
Linuxがルートファイルシステムのマウントを完了した後は、二枚目のSDカードを接続する事ができます。
|
CON6またはCON4にブートディスクを接続します。
Hermit-Atが保守モードとなるように、機能選択スイッチのHermit-At 起動モード設定(SW2.8)をONに設定します。
SDカードのHermit-Atを起動するように、機能選択スイッチのHermit-At 起動デバイス設定(SW2.7)をOFFに設定します。
CON4からブートする場合は、機能選択スイッチのSD/WLAN 設定(SW2.5)をONの状態で、SDブートデバイス選択スイッチ(SW9)を押下しながら電源を投入します。
「ルートファイルシステムの構築」で構築したルートファイルシステムで起動する場合は、図10.3「ルートファイルシステムの起動設定」のようにsetenvコマンドでLinuxカーネル起動オプションを設定します。rootfsオプションにて指定する値は、表10.5「ディスクデバイスの割り当て」を参考に設定してください。 setenvコマンドの詳細については「Hermit-Atの機能」を参照してください。
| |
---|
Linuxカーネル起動オプションを工場出荷状態に戻すには、次のようにコマンドを実行します。
|
「Linuxカーネルイメージの配置」で配置したLinuxカーネルイメージで起動する場合は、保守モードで図10.4「Linuxカーネルの起動設定」のようにsetbootdeviceコマンドでLinuxカーネルイメージを指定します。bootdeviceの指定は、表10.5「ディスクデバイスの割り当て」 を参照してください。
setbootdeviceコマンドの詳細については「Linuxカーネルイメージの指定方法」を参照してください。
| |
---|
起動デバイス設定を工場出荷状態(eMMCから起動)に戻すには、次のようにコマンドを実行します。
|
| |
|