2011年3月9日水曜日

USBブート

USBメモリからのブートを少しばかり試している。
手持ちの実験用のPCが、USBブートに対応していない古い機械が多い(って一体何年前の機械だ...)ので、あまり試せなかったのだけれど、ハードディスクの容量がテラバイト単位になってきて、データとシステムは分離したいと考えると、USBスティックからのブートも試しておかないと時代に遅れてしまう。

で、最初は無難にFreeNAS8.0betaをUSBメモリにインストールしてみたのだけれど、これがうまく起動してくれない。どうも機械との相性が結構あるみたい。
似たような条件ということで、CDROM起動を試してみると、これはすんなりといく。特に設定をしたわけでもないのに、/var や /tmp が メモリ上のファイルシステムとして確保されたのには少し驚いた。
あまりUSBメモリを何度も書き換えたくないので、USBメモリの容量分のファイルイメージを作ってそちらにファイルシステムイメージを作って作業。
で、USB1.1の転送速度 1MB/sec を考えると、4GBだとイメージ転送に1時間以上かかる計算になるので、最終的には小さいパーティションを切って dump/restoreで転送することにした(ま、何のこっちゃ..だけど)。
こちらも、/etc/fstabを編集した他は、まったくのGENERICな状態。で、挿して起動してみると、普通に起動してくれる。起動時間は3~4分(USB1.1)といったところか。たまにしか起動しないのならなんとか実用になるかも、といったところ。

で、もう少し速くならないか?というと、まずはGENERICカーネルが12MBほどあるので、これをカスタマイズしてスリム化、gzip圧縮も効果があるかもしれない、といったところか。
あとは、読み書きされる部分の分離。/var や /tmp はメモリ上に取るにしても、/root や /home をどうするか。

loaderのオプションで、ルートファイルシステムをメモリ上にとるオプションがあるのだけれど、こちらを利用した方がいいのかもしれない。linuxのinitrdは圧縮が掛かっているようだけれど、FreeBSDで圧縮されたファイルシステムイメージは使えるのだろうか?

0 件のコメント:

コメントを投稿