Date: Tue, 20 Jul 2010 02:47:18 GMT From: Joe Barbish <joeb@a1poweruser.com> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/148777: [New Port] [sysutils/qjail] [Utility to deploy large number of jails quickly] Message-ID: <201007200247.o6K2lIlj029608@www.freebsd.org> Resent-Message-ID: <201007200250.o6K2o19e028428@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 148777 >Category: ports >Synopsis: [New Port] [sysutils/qjail] [Utility to deploy large number of jails quickly] >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Jul 20 02:50:01 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Joe Barbish >Release: >Organization: none >Environment: >Description: Qjail [ q = quick ] is a 4th generation wrapper for the basic chroot jail system that includes security and performance enhancements. Plus a new level of "user friendliness" enhancements dealing with deploying just a few jails or large jail environments consisting of 100's of jails. Qjail requires no knowledge of the jail command usage. It uses "nullfs" for read-only system binaries, sharing one copy of them with all the jails. Uses "mdconfig" to create sparse image jails. Sparse image jails provide a method to limit the total disk space a jail can consume, while only occupying disk space of the sum size of the files in the image jail. Ability to assign ip address with their network device name, so aliases are auto created on jail start and auto removed on jail stop. Ability to create "ZONE"s of identical qjail systems, each with their own group of jails. Ability to designate a portion of the jail name as a group prefix so the command being executed will apply to only those jail names matching that prefix. Qjail reduces the complexities of large jail deployments to the novice level. Qjail has a fully documented manpage written for easy comprehension, which is a rarity in the "open source" world. Details are given to felicitate the use of qjail's capabilities to the fullest extent possible. >How-To-Repeat: >Fix: Patch attached with submission follows: # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # qjail # qjail/Makefile # qjail/pkg-descr # qjail/pkg-plist # qjail/pkg-message # echo c - qjail mkdir -p qjail > /dev/null 2>&1 echo x - qjail/Makefile sed 's/^X//' >qjail/Makefile << '7da10d06f45c8d9771da27572b9a6525' X# New ports collection makefile for: qjail X# Date created: July 22 2010 X# Whom: Joe Barbish X# X# $FreeBSD$ X# X XPORTNAME= qjail XPORTVERSION= 1.0 XCATEGORIES= sysutils XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE} XMASTER_SITE_SUBDIR= qjail XDISTFILES= qjail-1.0.tar.bz2 X XMAINTAINER= qjail@a1poweruser.com X XCOMMENT= Utility to quickly deploy & manage large numbers of jails X XLICENSE= BSD X XUSE_BZIP2= yes X XMAN8= qjail.8 qjail-intro.8 qjail.conf.8 X XNO_BUILD= yes X Xdo-install: X ${CP} /etc/rc.d/jail /etc/rc.d/jail.original X ${INSTALL_SCRIPT} ${WRKSRC}/jail /etc/rc.d/ X ${INSTALL_SCRIPT} ${WRKSRC}/qjail ${PREFIX}/bin/ X ${INSTALL_SCRIPT} ${WRKSRC}/qjail.sh ${PREFIX}/etc/rc.d/ X ${INSTALL_DATA} ${WRKSRC}/qjail.conf.sample ${PREFIX}/etc/ X ${CP} ${WRKSRC}/qjail.8 ${PREFIX}/man/man8/ X ${CP} ${WRKSRC}/qjail-intro.8 ${PREFIX}/man/man8/ X ${CP} ${WRKSRC}/qjail.conf.8 ${PREFIX}/man/man8/ X ${MKDIR} ${PREFIX}/share/examples/qjail X ${CP} -rfp ${WRKSRC}/examples/ ${PREFIX}/share/examples/qjail/ X Xpost-install: X ${CAT} ${PKGMESSAGE} X X.include <bsd.port.mk> 7da10d06f45c8d9771da27572b9a6525 echo x - qjail/pkg-descr sed 's/^X//' >qjail/pkg-descr << 'd05ede6e511e945409d9ec363b2f7453' XQjail [ q = quick ] is a 4th generation wrapper for the basic chroot jail Xsystem that includes security and performance enhancements. Plus a new Xlevel of "user friendliness" enhancements dealing with deploying just a Xfew jails or large jail environments consisting of 100's of jails. XQjail requires no knowledge of the jail command usage. X XIt uses "nullfs" for read-only system binaries, sharing one copy of Xthem with all the jails. X XUses "mdconfig" to create sparse image jails. Sparse image jails Xprovide a method to limit the total disk space a jail can consume, Xwhile only occupying the physical disk space of the sum size of the Xfiles in the image jail. X XAbility to assign ip address with their network device name, Xso aliases are auto created on jail start and auto removed on jail stop. X XAbility to create "ZONE"s of identical qjail systems, each with Xtheir own group of jails. X XAbility to designate a portion of the jail name as a group prefix so Xthe command being executed will apply to only those jail names Xmatching that prefix. X XQjail reduces the complexities of jail deployments to the novice Xlevel. Qjail has a fully documented manpage written for easy comprehension. XDetails are given to felicitate the use of qjail's capabilities to Xthe fullest extent possible. X X XWWW: http://sourceforge.net/projects/qjail/ X X d05ede6e511e945409d9ec363b2f7453 echo x - qjail/pkg-plist sed 's/^X//' >qjail/pkg-plist << '86541871219192287f62aed437005027' Xetc/qjail.conf.sample Xetc/rc.d/qjail.sh Xbin/qjail Xshare/examples/qjail/default/qjail.flavor Xshare/examples/qjail/default/etc/make.conf Xshare/examples/qjail/default/etc/periodic.conf Xshare/examples/qjail/default/etc/rc.conf Xshare/examples/qjail/default/usr/local/etc/sudoers Xshare/examples/qjail/nullmailer-example/qjail.flavor Xshare/examples/qjail/nullmailer-example/etc/rc.conf Xshare/examples/qjail/nullmailer-example/etc/mail/mailer.conf Xshare/examples/qjail/nullmailer-example/usr/local/etc/nullmailer/remotes X X@dirrm share/examples/qjail/default/usr/local/etc/ X@dirrm share/examples/qjail/default/usr/local/ X@dirrm share/examples/qjail/default/usr/ X@dirrm share/examples/qjail/default/etc/ X@dirrm share/examples/qjail/default/ X@dirrm share/examples/qjail/nullmailer-example/usr/local/etc/nullmailer/ X@dirrm share/examples/qjail/nullmailer-example/usr/local/etc/ X@dirrm share/examples/qjail/nullmailer-example/usr/local/ X@dirrm share/examples/qjail/nullmailer-example/usr/ X@dirrm share/examples/qjail/nullmailer-example/etc/mail/ X@dirrm share/examples/qjail/nullmailer-example/etc/ X@dirrm share/examples/qjail/nullmailer-example/ X@dirrm share/examples/qjail/ 86541871219192287f62aed437005027 echo x - qjail/pkg-message sed 's/^X//' >qjail/pkg-message << '52855aef6c8b745fc2678a3da244739a' X X X*************************************************************************** X X Use the qjail utility to deploy small or large numbers of jails quickly. X X Issue this command on the console command line first "man qjail-intro" X X After reading that do "man qjail" for the details. X X*************************************************************************** X 52855aef6c8b745fc2678a3da244739a exit >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201007200247.o6K2lIlj029608>