とりあえず TBD

とりあえず、いきあたりばったり

FreeBSD 10.0-RELEASE の ZFS root へのインストールを試してみた

今時、こんなことは仮想マシンでやればいいのだが、

DVD から 10.0-RELEASE をインストールする

 実マシンでまっさらにできる HDD ができたので、10.0-RELEASE の DVD からのインストールを試してみた。

 ZFS rootへのインストールがインストーラからできるようになったとのことで、せっかくなので ZFS rootにしてみる。

 インストーラが全部やってくれるので、とても楽。何も問題は出なかった。 ZFS のメニューに進むと stripe/mirror/raid選択、HDD選択があったが、 試せる HDD は一台のみなので、冗長化なしの pool になった。

できたパーティションの状態

 150GBしかない HDD だけどこんな感じになった。

 当たり前だけれども GPT になっている。

# gpart show ada0
=>       34  312581741  ada0  GPT  (149G)
         34       1024     1  freebsd-boot  (512K)
       1058    8388608     2  freebsd-swap  (4.0G)
    8389666  304192109     3  freebsd-zfs  (145G)

 各パーティションにはラベルがついていて、それぞれ gptboot0 swap0 zfs0 となっていた。

ZFS プール名は zroot 。

デバイスは ada0 などではなく UUID (gptid/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx) で参照される。長くて見難い。

できた ZFS ファイルシステム

 以下のような構成になった。

NAME                 USED  AVAIL  REFER  MOUNTPOINT
zroot               1.63G   141G   144K  none
zroot/ROOT           852M   141G   144K  none
zroot/ROOT/default   852M   141G   852M  /
zroot/tmp            176K   141G   176K  /tmp
zroot/usr            813M   141G   144K  /usr
zroot/usr/home       184K   141G   184K  /usr/home
zroot/usr/ports      813M   141G   813M  /usr/ports
zroot/usr/src        144K   141G   144K  /usr/src
zroot/var           1.25M   141G   616K  /var
zroot/var/crash      148K   141G   148K  /var/crash
zroot/var/log        216K   141G   216K  /var/log
zroot/var/mail       144K   141G   144K  /var/mail
zroot/var/tmp        152K   141G   152K  /var/tmp

zroot/ROOT/default がルートになる。

 結構細かく分けているようだ。ZFS なので構成の変更は後でどうにでもなるだろう。

 src や ports は展開しなかったが filesystem はできている。

プロパティに関してメモ

  • zroot以下 atime=off がデフォルト /var/mail だけは atime=on

  • compression=lz4 になっているもの

        /tmp
        /usr/ports
        /var/crash
        /var/log
        /var/mail
        /var/tmp
  • setuid=off になっているもの
        /tmp
        /var/log
        /var/tmp
  • exec=off になっているもの
        /var/crash
        /var/log

追記

 150GBの古いHDD なので当然 物理セクタサイズは 512byte/sector なのだが、zdb zroot で見てみると ashift が 12 になっていた(つまり 4Kbyte/sectore扱い)。