方法としては2通りかな?
- FreeNAS-8.3.0-RELEASE-x64.iso を CD に焼いて CD boot 後、メニューから適当なストレージにインストール
- FreeNAS-8.3.0-RELEASE-x64.img.xz を拾ってきて適当なストレージに直接書き込む
CD から起動してインストールする場合も、結局 CD に入ってる FreeNAS-8.3.0-RELEASE-x64.img.xz (ファイル名は FreeNAS_x64.img.xz になっている)が展開されて、ストレージの先頭部分に書き込まれるだけなので、どちらの方法でも同じものが出来る。
ただし、CD から起動してインストールする場合、フラッシュメモリにインストールすると極端に時間がかかる(約10倍程度)。
単純に xz で展開して dd で書いてるだけだと思うのだが、dd で書き込み単位のブロックサイズ調整がきちんとフラッシュメモリのページ・ブロックサイズを考慮して行われていないんじゃないかと思う。ひょっとすると xz の展開をかけながら書いているのが悪いのかもしれない。
ストレージに直接書き込める環境があるなら、ブロックサイズを 4KiB 以上の 2 の累乗に設定して直接書いたほうが断然早い。
BUFFALO
RUF2-E2G-K に install してみたところ次のような結果であった。
CD 起動でインストールした場合には、書き込み速度は 850〜880KiB/s 辺りを推移する。02:28 に開始した install が、 20 分後の 02:48 に途中経過で 1006.4MiB まで書き込み済みとなり、その後ちょっと目を離していたので正確な終了時刻は記録し損ねたが 39 分後の 03:07 までにはインストールを完了した。
一方で 32bit 版の Windows XP SP3 上の cygwin から ddrescue を用いてイメージの書き込みを行ったところ以下のように平均 8,848kB/s の書き込み速度でわずか4分弱しかかからなかった。
$ time ddrescue --force -b 1MiB FreeNAS-8.3.0-RELEASE-x64.img /dev/sdd FreeNAS-8.3.0-RELEASE-x6
4.log
Press Ctrl-C to interrupt
rescued: 2000 MB, errsize: 0 B, current rate: 365 kB/s
ipos: 1999 MB, errors: 0, average rate: 8849 kB/s
opos: 1999 MB, time from last successful read: 0 s
Finished
real 3m44.718s
user 0m0.655s
sys 0m4.327s
インストールに必要な容量は公式には 2GB とされており、FreeNAS-8.3.0-RELEASE-x64.img.xz を展開すると 2,000,000,000 Bytes 丁度になる。
もし手元に余らせてる 2GB の フラッシュメモリがあるなら、無駄にする容量が少ないのでそれを使うのがベストだろう。
インストールイメージは以下のように MBR 形式のパーティションテーブルにパーティションタイプ a5 (= FreeBSD) のプライマリパーティションが4つ切られている。
$ partinfo.rb FreeNAS-8.3.0-RELEASE-x64.img
"FreeNAS-8.3.0-RELEASE-x64.img"
MBR: initialized.
B a5 [ 0, 1, 1]-[ 122, 15,63] 63( 1,930,257) 3^2 * 7(3^3 * 7^2 * 1459)
- a5 [ 123, 1, 1]-[ 245, 15,63] 1,930,383( 1,930,257) 3^2 * 7 * 13 * 2357(3^3 * 7^2 * 1459)
- a5 [ 246, 0, 1]-[ 248, 15,63] 3,860,640( 3,024) 2^5 * 3^2 * 5 * 7 * 383(2^4 * 3^3 * 7)
- a5 [ 249, 0, 1]-[ 33, 15,63] 3,863,664( 41,328) 2^4 * 3^2 * 7 * 3833(2^4 * 3^2 * 7 * 41)
2,000,000,000 Bytes (= 2^10 * 5^9)
3,906,250 Blocks (= 2 * 5^9)
第4パーティションの末尾はまでは 1,999,355,904 Bytes しかないので、最低と言う意味ではこれだけあれば良い。
余った領域は使われないのであまり大きなストレージにインストールしても容量が無駄になる。
また、見ての通り、アライメントは全く考慮されてない。
NAS 用の OS としては定番のような感じがしていたのだが、フラッシュメモリや AFT 対応という意味ではまだチューニングが十分とは言えない印象を感じる。
起動については、FreeNAS をインストールした USB メモリを USB ハブ経由で接続すると自分の環境ではどうも調子が悪いと言うか、どうも Django の起動に失敗しているらしく、Web GUI を開こうとしても nginx というタイトルだけが出る状態になってしまう。
本体の USB ポートに直付けすると問題は解決した。