BeagleBoneは購入した際、Linux(Angstrom)が入っていますがちょっと使い慣れないので普段使っているDebianを入れてみた。
スマートなやり方は最少セットをSDに焼いてネットインストールさせる方法だと思いますが、どうもネット上で公開されているバイナリでは自分のBeagleBone(Rev.A6a)で正しくセットアップできなかった*1ので、イメージをSDに焼いてブートさせた。手順は以下
PCのDebian環境でSDカードを焼いています。
同梱されているスクリプト;setup_sdcard.shでSDにイメージを展開します。SDカードのデバイス名は/dev/sddとしていますが、環境によって異なるので適切なデバイス名に変更してください。スクリプトでは可能性のあるドライブをリストにして最終確認してくるので万一間違ったデバイスを指定しても、いきなりルートデバイスが消されてしまうことはありません。
wget http://ynezz.ibawizard.net/beagleboard/squeeze/squeeze-minimal-armel-2011-12-23.tar.xz
tar xJfv squeeze-minimal-armel-2011-12-23.tar.xz
cd squeeze-minimal-armel-2011-12-23
./setup_sdcard.sh --mmc /dev/sdd --uboot bone
PCに接続されているデバイスを正しく確認する方法について本来の正しい手順があるかと思いますが、例えば、fdisk -l とすればデバイス一覧が表示されます。一覧の中からSDを刺して増えたデバイスがSDカードであると推測できます(サイズが数GBで、FATフォーマットになっている)。(ちょっと我流のやり方かもしれません)
なおインストールが開始された後、パッケージ不足により以下のようなメッセージが出ました。
文字通り、上記パッケージがないので、手順に従って不足分をPCのLinux環境にインストールします。
Ubuntu/Debian: sudo apt-get install uboot-mkimage wget pv dosfstools btrfs-tools parted
できあがったSDをBeagleBoneに刺して起動させます。上記のKernelバージョンではUserLEDが点滅しない仕様のようです。(普段チカチカ光っているユーザ用LEDがまったく点灯しないのでブートに失敗したと誤解しました)
従来通り、USB経由でシリアル接続できます。ID/PWDは以下です。
ID/PWD
debian/temppwd root/root
今後のやることは。。
Kernelソースをインストールして、ローダブルモジュールを試作する→デバドラを作ってみる。。
■追記
このイメージはKernelVersionが3.1.0のようで、バージョンが上がりすぎるので、どうにかしてsqeezeの公式サポートバージョンまで下げる必要がある。。(ソースヘッダパッケージ等も出ていないようなので。。)
DebianはこれぐらいにしてArchiLinuxに移るべきか。。
■ご参考URL
BeagleBoardにDebianを入れるWiki(主にネットインストール手順)
http://elinux.org/BeagleBoardDebian
本家Debianのインストール資料(この手順ではやっていません。ご参考まで)
http://wiki.debian.org/InstallingDebianOn/TI/BeagleBone