Solaris Nevada build 90 が出ました。 これでようやくインストーラが ZFS root ファイルシステムの作成に対応して、ZFS でのインストールと起動が簡単にできるようになりました。
ただし GUI のインストーラはまだ対応していません。 GUI のインストーラは使用していないので個人的には問題ないのですが。
インストーラがどのように対応したのか、気になっていたところを確認しました。
Solaris Interactive Text (Console session) を使用して初期インストールをする場合です。 いつも自分が使用している方法です。
まずはファイルシステムのタイプを選択するようになっています。
次は既存のパーティションから残しておきたいものを選択するところです。
この例は元々
/ c0d0s0 /var c0d0s1 swap c0d0s3 ZFS Pool c0d0s7
このようなパーティションに分けて使用していた場合です。
この中で残しておきたい ZFS 用に使用していた c0d0s7 の部分だけを選択しました。
次は新たに作成する ZFS Pool の設定です。
ここで指定した内容で ZFS root 用の Pool やファイルシステムが作成されます。
ここでは /var を分けて作成するように指定しました。
インストールが完了すると ZFS root はこのようにできています。
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 1.67G 9.16G 35.5K /rpool rpool/ROOT 683M 9.16G 18K legacy rpool/ROOT/snv_90 683M 9.16G 669M / rpool/ROOT/snv_90/var 13.9M 9.16G 13.9M /var rpool/dump 512M 9.16G 512M - rpool/export 37K 9.16G 19K /export rpool/export/home 18K 9.16G 18K /export/home rpool/swap 512M 9.16G 13.1M -
容量は参考にしないでください。 試すために最低限のものしかインストールしていません。
/var は分けるように指定したのでこのようにできています。
dump と swap のサイズは自動的に RAM 容量の 1/2 になるようです。
元々 c0d0s7 に存在していた ZFS の pool1 を使えるようにするには次のようにします。
# zpool import -f pool1 # zpool list NAME SIZE USED AVAIL CAP HEALTH ALTROOT pool1 4.91G 168K 4.91G 0% ONLINE - rpool 11G 1.18G 9.82G 10% ONLINE -
これで、rpool の方は新しい OS を上書きするため用として、pool1 の方は残しておきたいものを置いておくため用として使い分ける事ができるようになります。
その他の関連
# swap -l swapfile dev swaplo blocks free /dev/zvol/dsk/rpool/swap 182,2 8 1048568 1048568 # dumpadm Dump content: kernel pages Dump device: /dev/zvol/dsk/rpool/dump (dedicated) Savecore directory: /var/crash/ Savecore enabled: yes # cat /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # fd - /dev/fd fd - no - /proc - /proc proc - no - /dev/zvol/dsk/ rpool/swap - - swap - no - /devices - /devices devfs - no - sharefs - /etc/dfs/sharetab sharefs - no - ctfs - /system/contract ctfs - no - objfs - /system/object objfs - no - swap - /tmp tmpfs - yes - #見やすくなるように加工してあります /rpool/boot/grub/menu.lst の内容 title Solaris Express Community Edition snv_90 X86 kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS module$ /platform/i86pc/$ISADIR/boot_archive title Solaris failsafe findroot (pool_rpool,0,a) kernel /boot/platform/i86pc/kernal/unix -s -B $ZFS-BOOTFS module /boot/x86.miniroot-safe
HDD を2台使うようにすると自動的にミラーの Pool にしてくれます。
自分がやりたい事は問題なくできるようなので安心しました。 Caiman インストーラの方はシンプルすぎてやりたい事ができないので...。
VMware Fusion 2.0 Beta1 で試したところでは、メモリが足りないとインストーラが途中でハングするようでした。 どのくらい必要なのかはわかりませんが、512MB ではだめなようです。 1GB では最低限のインストールはできましたが、全体をインストールしようとすると途中でカーネルパニックが起きて再起動してしまいます。 2.0 Beta1 で試しているからなのかもしれませんが...。
ところで、Mac OS X への ZFS 実装は進展してほしいですね。 WWDC で何か出てこないだろうか...