FreeBSD 10.0-RELEASEから、インストールの際にファイルシステムとしてZFSが選べるようになる。
システムの置かれるファイルシステムをZFSにする、ということは、今までも出来ないことはなかったけど、そりゃもう面倒な手順を経る必要があった。
それがインストールの時の選択ひとつで出来るようになったというのは、けっこうすごいこと。

また、システムをZFSに置けると、まずパーティションの切り方に悩まなくて済む。
あとで/varが足らないとか/usr/localがとかそういったことが無くなる。

そのうえで、システムまるごとzfsのアドバンテージを満喫できる。
まるまるスナップショット取れたりするからね。

ただ、2012/10/10現在、いまだテスト中のところであり、10.0-BETA1あたりに入るかも、という状態。(2013/10/15追記; 10.0-BETA1に入ってました)
そんな状態で試してみた顛末を記す。

なお一次情報は以下の通り。

インストーラでのzfs on rootを試す

前提:FreeBSD 10.0-ALPHA5, zfsbootonly.2013-10-09.isoをvirtualboxで試しています。
注意: 先述の通りテストの真っ最中なので、下記の内容が変わる可能性は十分にあります。

Allan Jude氏のページからインストーラをダウンロードする。
通常通り起動し、10.0になっても相変わらず愛想のかけらもないメニューを選択して進むと、以下の通りフォーマットのところでZFSが選べる。

img

ZFSを選ぶとこのように。

img

使うディスクを選び、進む。

img

あとは通常通り。

unameはこの通り。

FreeBSD yaryka 10.0-ALPHA5 FreeBSD 10.0-ALPHA5 #0 r256092: Sun Oct  6 22:30:23 UTC 2013     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64

カーネルモジュールがこのように組み込まれている。

$ kldstat
Id Refs Address            Size     Name
 1   10 0xffffffff80200000 17fbc88  kernel
 2    1 0xffffffff819fc000 2b66d0   zfs.ko
 3    2 0xffffffff81cb3000 8098     opensolaris.ko

ディスクの内容はこのように。

$ df -h
Filesystem                   Size    Used   Avail Capacity  Mounted on
zroot/bootenv/default         61G    856M     60G     1%    /
devfs                        1.0k    1.0k      0B   100%    /dev
zroot/tmp                     60G    176k     60G     0%    /tmp
zroot/usr/home                60G    184k     60G     0%    /usr/home
zroot/usr/local               60G    144k     60G     0%    /usr/local
zroot/usr/obj                 60G    144k     60G     0%    /usr/obj
zroot/usr/ports               60G    160k     60G     0%    /usr/ports
zroot/usr/ports/distfiles     60G    144k     60G     0%    /usr/ports/distfiles
zroot/usr/ports/packages      60G    144k     60G     0%    /usr/ports/packages
zroot/usr/src                 60G    144k     60G     0%    /usr/src
zroot/var                     60G    452k     60G     0%    /var
zroot/var/crash               60G    148k     60G     0%    /var/crash
zroot/var/db                  60G    240k     60G     0%    /var/db
zroot/var/db/pkg              60G    144k     60G     0%    /var/db/pkg
zroot/var/empty               60G    144k     60G     0%    /var/empty
zroot/var/log                 60G    196k     60G     0%    /var/log
zroot/var/mail                60G    144k     60G     0%    /var/mail
zroot/var/run                 60G    228k     60G     0%    /var/run
zroot/var/tmp                 60G    152k     60G     0%    /var/tmp