年末にFreeBSD機が壊れてしまってさみしくなってしまったのでUbuntuを入れているPCにFreeBSDを入れた.
以前,9.1RC2をZFSに入れたけど,もう少し細かく設定したので手順を書き直し.
1. インストーラの起動
1GBのSDカードに10-Rの64ビット版 FreeBSD-10.0-RELEASE-amd64-memstick.img を書き込んでUSBブート.
普通にインストーラを使ってインストールを進めるが,途中のディスクの設定のところはZFSを選ばず,Shellを選ぶ.一度ZFSにしてみたが,パーティションの切り方に満足できなかったので,一度作ったZFSを参考に手動で作ることにした.
2. ZFSの設定
WD REDの1TB 1本のみ使う.ミラーにはしない.4kセクターなディスクなのでzfsパーティションを作るときにちょっと気を使ってあげる.swapはZFSのプール内に作る.
GPTパーティションを作る.
# gpart destroy -F ada0 # gpart create -s gpt ada0 # gpart add -s 512k -a 4k -t freebsd-boot -l boot0 ada0 # gpart add -a 4k -t freebsd-zfs -l disk0 ada0
4kセクタ対応ZFSパーティション(ashift=12)を作る.
一旦,gnopで作ったラッパーデバイスでzfsを作り,export,nop削除,importする.
# gnop create -S 4096 /dev/gpt/disk0 # kldload zfs # zpool create -o altroot=/mnt -O canmount=off -m none rpool /dev/gpt/disk0.nop # zpool export rpool # gnop destroy /dev/gpt/disk0.nop # zpool import -o altroot=/mnt -o cachefile=/tmp/zpool.cache rpool
3. ファイルシステムの詳細設定
# zfs set checksum=fletcher4 rpool # zfs set atime=off rpool
ルート
# zfs create -o mountpoint=none rpool/ROOT # zfs create -o mountpoint=/ rpool/ROOT/default
各ディレクトリ
/直下のフォルダにはmountpointプロパティを設定し,それ以下は単に作るだけ.必要に応じて圧縮とsetuidなどを設定する.
# zfs create -o mountpoint=/tmp -o compression=lz4 -o setuid=off rpool/tmp # chmod 1777 /mnt/tmp # zfs create -o mountpoint=/usr rpool/usr # zfs create rpool/usr/local # zfs create rpool/usr/obj # zfs create -o compression=lz4 -o setuid=off rpool/usr/ports # zfs create -o compression=off -o exec=off -o setuid=off rpool/usr/ports/distfiles # zfs create -o compression=off -o exec=off -o setuid=off rpool/usr/ports/packages # zfs create -o compression=lz4 -o exec=off -o setuid=off rpool/usr/src # zfs create -o mountpoint=/home rpool/home # zfs create -o mountpoint=/var rpool/var # zfs create -o compression=lz4 -o exec=off -o setuid=off rpool/var/crash # zfs create -o compression=lz4 -o exec=off -o setuid=off rpool/var/log # zfs create -o compression=lz4 -o atime=on rpool/var/mail # zfs create -o compression=lz4 -o exec=on -o setuid=off rpool/var/tmp # chmod 1777 /mnt/var/tmp
ブート設定
# zpool set bootfs=rpool/ROOT/default rpool
Swap作成
# zfs create -V 12G -o org.freebsd:swap=on -o checksum=off rpool/swap
4. インストールの続き
shellをexecで抜けてインストールの続きを実行.
5. インストール後の設定(1)
# echo 'zfs_enable="YES"' >> /mnt/etc/rc.conf # echo 'zfs_load="YES"' >> /mnt/boot/loader.conf # cp /tmp/zpool.cache /mnt/boot/zfs/
6. インストール後の設定(2)
これだけだとなぜか起動せず.PMBRの1番目のパーティションにアクティブフラグがついていない.
fdisk -aを実行するため,一度インストーラを抜けてもう一度USBからブートし,Live CDを選択.
# 前回のときは起動した気がするんだけどなぁ.
# fdisk -a /dev/ada0
これでおしまい.