对 jail 进行磁盘空间限制

前面提到的《用 jail 构造受控主机》未对 vhost 的磁盘空间作出限制,如果 host 的磁盘空间紧张,那么可以对 jail 的磁盘空间进行限定,以避免对 host 造成影响。

dd if=/dev/zero of=/usr/local/jail/image bs=1024k count=2000
#挂载 /usr/local/jail/image 为文件系统
mdmfs -F /usr/local/jail/image md1 /usr/local/jail/192.168.1.130
mdconfig -a -t vnode -f /usr/local/jail/image -u 1
freebsdlabel -w /dev/md1 auto
newfs -U /dev/md1c
mount /dev/md1c /usr/local/jail/192.168.1.130
cd /usr/src
make installworld DESTDIR=/usr/local/jail/192.168.1.130
……

编辑 /etc/rc.d/LOGIN,保证 mdmfs 在 jail 之前启动
mdmfs -F /usr/local/jail/image md1 /usr/local/jail/192.168.1.130
mdconfig -a -t vnode -f /usr/local/jail/image -u 1
fsck -y /dev/md1c
mount /dev/md1c /usr/local/jail/192.168.1.130

Tags: ,

This entry was posted on Tuesday, March 13th, 2007 at 11:03 pm and is filed under bsd. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Posts you may enjoy

3 Responses to “对 jail 进行磁盘空间限制”

gravatar image

Centeur March 13th, 2007 at 11:03 pm | reply

late是延后挂载,的确是个好方法,待周一回到单位实践一下我再作更新吧。

gravatar image

CHEN March 13th, 2007 at 11:03 pm | reply

delphij说需要在fstab中给md设备打late标志 不过不知道是有啥具体作用
楼主也重新把这个帖子的内容最后编辑下吧.最后做出个完整的内容出来

gravatar image

Xin LI March 13th, 2007 at 11:03 pm | reply

我认为这个方法存在一些问题。

a) 没有创建bsdlabel,此时正常情况应该没有 md1c 出现。想要它出现应该是使用 bsdlabel -wB /dev/md1 之后才有。个人认为对于vnode md,label是不必要的(毕竟,一般没有人在里面分区)。
b) 关于dd的用法,我认为可以考虑用 truncate -s 2g 来代替。
c) 修改LOGIN是不对的。正确的做法是使用ramdisk rc.d脚本,具体做法是在 /etc/rc.conf 中进行类似下面的配置:
mdconfig_md0=”-t vnode -f /usr/local/jail/image -u 0″
等等,然后,在 /etc/fstab 里面就可以挂载这些md了。如此,系统的fsck等也会照顾到这个卷。

修改LOGIN的另一个比较明显的问题是,jail脚本在它之前启动。

最后还要注意一点,vnode方式的md性能很不好。我个人倾向于避免使用这种方式。

Leave a Reply

Please copy the string BHHJDb to the field below: