4月
15
せっかくなので VMware に FreeBSD を入れて ZFS をさわってみることにしました。準備編ではとりあえず current に追いつくところまで。といっても current に追いつくところまではシステムを普通にバージョンアップするのと同じなわけで面白い話ではないのですが。
FreeBSD-current メーリングリストにメモリ 128MB で返り討ちにあった人がいたり、メモリ 512MB ないと起動時に警告が出るようになる修正が最近入ったりしているので、とりあえずメモリは 1GB で。current を追跡することになるので、6.2-RELEASE をインストールしてから、ソースを取ってきてバージョンアップします。
というわけで手順
- 6.2-RELEASE のインストール iso イメージ (6.2-RELEASE-i386-disc[12].iso) をダウンロードする。インストールしてみて分かりましたが、2 枚目は不要でした。
- CD-ROM ブートしてインストールする。「Choose Distributions」では特に選ばずに Exit します。ソースは自分で current を持ってくるので、「4 Developer」や「6 Kern-Developer」である必要はありません。
- cvsup-without-gui をインストールする。
# pkg_add ftp://ftp1.jp.freebsd.org/pub/FreeBSD/ports/packages/net/cvsup-without-gui-16.1h_2.tbz
- 「CVSup を使う」の記述に従って src-all と ports-all を取ってくる。(後者は bash が欲しいから)
- ここからは基本的に「World の再構築」のとおりに。
/usr/src で、# make buildworld # make buildkernel # make installkernel # reboot
- 再起動が完了するとネットワークが見えなくなるが慌てず騒がず、/etc/rc.conf の
ifconfig_lnc0='DHCP'
を
ifconfig_le0='DHCP'
に変更してまた再起動する。デバイス名が変更されたんですね。
- /usr/src で、
# mergemaster -p # make installworld # mergemaster # reboot
mergemaster が面倒なんでリターン連打してましたがいいんでしょうか…?
/boot/kernel/zfs.ko が存在するし、zfs コマンドを引数なしで叩くと初回はライブラリを初期化できずに失敗してカーネルがカーネルモジュールを読み込んでいるのが分かるので、たぶんこれで大丈夫でしょう。
boot partitionをZFSにしたいですよね… やっぱり。
stableに降りてくるのがいつになるのか期待。
最近のFreeBSDはリリース周期が早いのでいい。
boot/root パーティションは単純なミラーリングでいいんじゃないかな。ブートに本当に必要なパーティションだけに限定すればそんなに容量が増えるようなものではないし、書き換えが頻繁に発生するわけでもないし、ZFS のお世話になるまでもない気がします。
ZFS によるミラーリングの利点は…どうなんでしょう。
[FreeBSD] ZFS を使ってみる(脇道編)…
前回から 1 週間もたってるしソース取ってきてアップデートするか、と思って make buildworld したら、
/usr/obj/usr/src/tmp/usr/ (more…)