raspberry-piにOpenWrtをインストールする。市販のルーターの殻割りしてbootloader変更して・・・という手順を踏むよりは幾分簡単です。基本的にはSDカードにデータを書くだけですし。
ただまぁapt-getを捨ててまでやる必要があるの?と言われるとわからん。でもネットワーク機器として使用するなら私は一考の余地があると思います。AP設定とか楽ちんですしね。
準備するもの
- Raspberry Pi
本体。これがないと始まらない。
- SDカード
そんなに大容量のものは必要ないです。2GBあれば十分。
- (オプション) シリアルコンソール
なんだかんだであると便利。
はじめに
最初はopenwrtからimageファイルとってきてddでコピーすれば終わりですよねーとか思ってたら思わぬ落とし穴があって時間がかかりました。
結論から言いますと、rpiによって起動しないブートローダがあるらしく、openwrtのimageファイルに埋め込まれているブートローダでは私のrpiは起動せず、最新のものに上書きする必要がありました。
手順
1. 以下のサイトから最新のraspbianをダウンロードする。
http://www.raspberrypi.org/downloads
2. 取得したraspbianの/bootから以下のファイルをPCにコピーします。
- boodcode.bin
- start.elf
- fixup.dat
SDカードにddしてからコピーしてもいいですし、mountしてコピーしてもよい。
3. 以下のサイトからrpi用openwrtのイメージファイルをダウンロードする。
http://downloads.openwrt.org/attitude_adjustment/12.09-beta/brcm2708/generic/openwrt-brcm2708-sdcard-vfat-ext4_128.img
4. 3で取得したイメージをSDカードにddする。
$ sudo dd if=./openwrt-brcm2708-sdcard-vfat-ext4_128.img of=/dev/sdX bs=1M
Xはマシンによって異なるので注意してください。あと間違ってもsdb1などパーティションを指定しないでください。
ddが完了したら再度マシンに挿しなおしてください。
5. 2で取得しておいたファイルを4で作成したSDカードの1番目のパーティションに上書きします。完了したらアンマウントしてください。
6. シリアルコンソールがあればつないでください。ピンアサインについては割愛。
7. 起動して192.168.1.1にアクセスできればOKです。
デフォルトのIPアドレスを変更しておきたい場合はSDカードをPCに挿して直接/etc/config/networkを編集すればよいです。
参考
http://wiki.openwrt.org/toh/raspberry_pi
http://www.zoobab.com/raspberry-pi-openwrt