さて、ここまででPXEブートに必要なDHCPサーバ機能とTFTPサーバ機能が正常に動作することが確認できた。次は本来の目的であるOSのブートを設定する。だがここにはもう1つ、越えなければならないハードルがある。
TFTPサーバで提供できるのは、あくまでファイルのダウンロードであり、ファイル共有のように自由に読み出し、書き込みができるわけではない。そのため、TFTPではブートストラップをダウンロードし、それによって以降のブートプロセスが処理されることになる。その際、OSの実行環境(ファイルシステム)をどうやって構築するかが問題となるが、これはHDDにインストールせずに利用可能なLiveCDなどでも同様だ。つまり、LiveCD版が提供されているOSは比較的簡単にPXEブートできる可能性が高い。
今回は人気の高いLinuxディストリビューションである「Ubuntu」を使用する。
OSのイメージは数ギガに及ぶ巨大なものが多いため、ダウンロードにも時間がかかる。また、ダウンロードが集中するとサーバへの負荷もかかってしまう。そこで今回は、TurboNASのダウンロードステーションからBitTorrent経由でダウンロードを行うことにする。ダウンロードステーションを利用すればダウンロードが完了するまでPCを立ち上げっぱなしにしておく必要はない。
ダウンロードしたファイルはISO形式になっている。これはCDやDVDなどのデータを丸ごとイメージ化して1ファイルにしたもので、通常はCDやDVDなどに焼いてから使用する。だが、TurboNASにはISOマウント機能があり、ISOファイルのままでもその中に含まれるファイルに個別にアクセスできる。アクセス権管理>共有フォルダからISO共有フォルダタブをクリックし、「ISOファイルのマウント」を選択してISOファイルを指定する。
ここで1つ工夫をしておく。ISOをマウントした場合、そのマウント先は共有フォルダのトップに作成される。これではISOファイルに含まれるファイルをTFTPでダウンロードすることはできない。ISOマウントした後にファイル単位でTFTPディレクトリ以下にコピーしてしまってもよいが、シンボリックリンクを使えば手間がかからない。また、今後ISOファイルを差し替えたときにシンボリックリンクを張り直す手間を考えて、ISOマウントディレクトリはISO01のように内容に関係しない連番などにしておくとよい。
カーネルvmlinuzのダウンロード、その後の初期ユーザー空間となるinitrdまではTFTPでダウンロードできるが、以降のファイルシステムはNFSを利用する。ISO共有フォルダのNFSアイコンをクリックし、読み取り専用にしておく。
SYSLINUXのメニュー設定ファイル「default」では、KERNELにcasper/vmlinuz、APPENDのパラメータinitrdにcasper/initrd.lzを指定する。vmlinuzとinitrd.lzはTFTP経由で読み込まれるので、TFTPディレクトリからのパス、nfsrootはNFS経由なのでNFSパスになることに注意する(設定例2。ここではTurboNASのIPアドレスを192.168.0.11、ISO共有フォルダをISO01としている)。クライアントPCを起動し、SYSLINUXメニューから「Ubuntu12.04」を選択してUbuntuが起動すれば成功だ。
default syslinux/vesamenu.c32
label Ubuntu12.04
KERNEL /ISO01/casper/vmlinuz
APPEND root=/dev/nfs initrd=/ISO01/casper/initrd.lz boot=casper netboot=nfs nfsroot=192.168.0.11:/ISO01
そのほかにもPXEブートが可能なLiveCDはたくさんある。中には一部のファイルを書き換えなければならないものもあるが、インターネット上の情報などを参考に選んでほしい。
TurboNASはもともとベースがLinuxであり、かつ、シェルが利用できるroot権も解放されているため、その気になればいくらでもいじることができる。それと同時に、そこまでLinuxに詳しくなくても自らの手で機能拡張できる手軽さ、柔軟さもあわせ持つ。
今回紹介したように、ファームウェア自身に搭載される新機能や、QPKG、iPKGといったパッケージで提供される拡張機能を組み合せることで、さまざまな役割を持たせることが可能になる。特に、ダウンロードのような時間のかかる処理、VPNサーバやWebサーバなど、常時待機させておくことに意味があるサービスを消費電力の少ない機器にまかせることには大きなメリットがある。
TurboNASを導入する際は、NASとして利用するのはもちろん、そういった+α活用方法を考えてみてはいかがだろうか。
Copyright © ITmedia, Inc. All Rights Reserved.