FreeBSDでzfsを試してみた その4
jailの構築が終わったのでjail内でzfsを試してみる。
jailの設定
まず、jailでマウントが出来るようにする。
# sysctl security.jail.mount_allowed=1
これだと、再起動した時にもう一回やらないといけないので、/etc/sysctl.confに書いておく
# echo'sysctl security.jail.mount_allowed=1' >> /etc/sysctl.conf
次にjail内でzfsコマンドを使用できるようにする。
# vim /usr/local/etc/ezjail/sample01 - export jail_sample01_devfs_ruleset="devfsrules_jail" + export jail_sample01_devfs_ruleset="zfsenable"
前回ezjailをインストールした時に/usr/local/etc/ezjail.confに以下の様に書いておけば上のはいらなかったぽい。
# vim /usr/local/etc/ezjail.conf ezjail_devfs_enable="YES" ezjail_devfs_ruleset="zfsenable"
ezjail.confがezjail-adminでjail作るときにしか意味がないのに気づかずにしばらくここで苦戦した><
zfsの設定
次はzfsのファイルシステムをjailで操作できるように設定する。
# zfs create zpool0/jail # jls JID IP Address Hostname Path 1 192.168.0.82 sample01 /usr/local/jails/sample01 # zfs jail 1 zpool0/jail # zfs set jailed=on zpool0/jail
これでjail内でzfsが使用できるようになったはず。
検証
動いているか確認をする。
# jexec 1 /bin/tcsh sample01# zfs list NAME USED AVAIL REFER MOUNTPOINT zpool0 513M 1.44G 20K /zdevel zpool0/jail 18K 1.44G 18K /zdevel/jail sample01# ls /zdevel jail
zfs createコマンドを試してみる。
sample01# zfs create zpool0/jail/sample01 sample01# zfs create zpool0/sample01 cannot create 'zpool0/sample01': permission denied
ちゃんとjailの設定がされているzpool0/jailにはzfsのボリュームを作れて、設定がされてないzpool0には作られない。
速度比較
sample01# dd if=/dev/urandom of=/zdevel/jail/random.dat count=131072 bs=1024 131072+0 records in 131072+0 records out 134217728 bytes transferred in 12.411375 secs (10814090 bytes/sec) # dd if=/dev/urandom of=/zdevel/random.dat count=131072 bs=1024 131072+0 records in 131072+0 records out 134217728 bytes transferred in 12.342206 secs (10874695 bytes/sec)
普通にファイルの作成とかも出来るし、速度もjail内と外で大差ない。
まとめ
これで大体FreeBSDで出来ることは終わりかな?
USBメモリを2本挿すだけで簡単にテストできるのは嬉しかった。ただ、やっぱりUSBメモリなのでちゃんとしたHDDで速度とかのテストをしたいところ。
FreeBSDでiSCSIが利用可能になるのはいつになるんだろう……