組み込み機器にBusyBoxとuClibcを導入しよう【前編】:いますぐ使える! BusyBox活用術(4)(2/2 ページ)
BusyBox+uClibcの効能をさらに理解するために、ぷらっとホーム社の「OpenBlockS266」を用いて実際にWebサーバを構築する。
Buildrootの設定からはじめよう
まず、Buildrootから設定していきましょう。主役であるBusyBoxやuClibc、そしてLinuxカーネルの設定は、このBuildrootの設定の後で行います。
先ほど展開したBuildrootのディレクトリで設定を開始します。
$ make menuconfig
OBS266に必要な設定は、このデフォルトの状態でほとんどOKですが、Linuxカーネルの設定ファイルの指定だけが必要となります。
メニューから[Kernel]−[.config file]を選択してください。すると、Linuxカーネルの設定ファイルを入力する画面が表示されます(画面1)。ここに先ほどダウンロードした設定ファイル「dot.config.powerpc-obs266」を指定します。ちなみに画面1のように先頭に「$(BASE_DIR)」を指定すると、現在設定を行っている「buildroot」ディレクトリからの相対パスで指定できます。
これでBuildrootの基本的な設定は終了です。ほかの設定については好みや目的に合わせて変更してみるのもよいでしょう。
BusyBox、uClibc、Linuxカーネルを設定しよう
後は「make」を実行して構築するだけでファームウェアが出来上がりますが、その前にBusyBoxやuClibc、Linuxカーネルの設定を必要に応じて行わなければなりません。
Buildrootでは、これらを簡単に設定するための仕組みが用意されていて、次のように実行します。
$ make busybox-menuconfig
a)BusyBoxの設定 |
$ make uclibc-menuconfig
b)uClibcの設定 |
$ make linux26-menuconfig
c)Linuxカーネルの設定(注6) |
uClibcとLinuxカーネルについては、今回は特に設定を変更する必要はありませんので、この後はBuxyBoxの設定だけを行っていきます。
BusyBoxにWebサーバを組み込もう
OBS266にBusyBoxとuClibcを組み込んでWebサーバを構築しよう! というのが今回の目的ですので、BusyBoxのWebサーバを有効にしてみましょう。
先ほど説明した以下のコマンドを実行し、BusyBoxの設定を行います。
$ make busybox-menuconfig
Webサーバを有効にするには、[Networking Utilities]の中にある「httpd」を有効にします(画面2)。
画面2の赤枠内が「httpd」の詳細設定です。認証やCGIなどの設定が含まれています。必要であればここで設定を変更するわけですが、今回はデフォルトのままとします。
そのほか、ファイルの転送用として「httpd」の少し上にある「ftpget」および「ftpput」を選択しておきます(後ほど、ファームウェアの転送などで使います)(画面3)。
以上の設定が完了したら、[Exit]を2回選択し、設定を保存して終了します。
ファームウェアを構築しよう
最後に、以下のようにBuildrootをmakeしてファームウェアの作成を開始します。
$ make
今回は少し時間がかかりますので、気長に待ちましょう。しばらくして正常に終了すれば、「binaries/uclibc」以下に、Linuxカーネルやファイルシステムイメージ、ファームウェアが作成されているはずです。
$ ls -s1 binaries/uclibc/ 合計 21896 1476 linux-kernel-2.6.26.5-ppc ←Linuxカーネル 15284 rootfs.powerpc.ext2 ←ルートファイルシステムイメージ 5136 zImage.initrd.treeboot ←ファームウェア $
いかがでしょうか? うまく構築できましたか? 途中、エラーで中断するなどうまくいかない場合は、もう一度本稿を参考に設定などの見直しをしてみてください。
さて、今回はBusyBox+uClibcによるWebサーバを、OBS266に組み込むためのファームウェアの構築までを説明しました。次回は、このファームウェアをOBS266に書き込み、Webサーバを動作させるための設定を行います。ご期待ください!(次回に続く)
Copyright © ITmedia, Inc. All Rights Reserved.