.TH ezjail\-admin 1 .SH NAME ezjail-admin \- Administrate ezjail .SH SYNOPSIS .T .B ezjail-admin create [-f flavour] [-r jailroot] [-x] .I hostname jailip .T .B ezjail-admin delete [-w] .I hostname .T .B ezjail-admin list .T .B ezjail-admin update [-s sourcetree] [-i] [-pP] .SH DESCRIPTION The .B ezjail-admin tool is used to manage jails inside the ezjail scope. It is not used to start or stop ezjails jails. Refer to ezjail(5) for more details. .SH ezjail-admin create makes a copy of the ezjail template jail to the standard jail directory, using either the name specified with the -r option or a name derived from the given hostname. If the jailroot does not start with a /, it is interpreted relative to ezjails root dir (default: /usr/jails). If the given jailroot lies outside ezjails root dir, a soft link is created inside ezjails root dir pointing to the newly created jails location. If the -x (jail exists) option is given, .B the first step is skipped (an existing jail is used) useful in situations where you just want to alter some of a jail properties and called ezjail-admin delete without the -w option before. However, sanity checks are being performed. It then creates an entry in its .I EZJAIL_PREFIX/etc/ezjail/ resource directory allowing the jail to be brought up after next reboot. If the ezjail_mount_enable option is set, a .I /etc/fstab.hostname is generated, allowing the basejail to be auto-mounted when the jail starts up. The newly created Jail can perform some initializiation actions, if the -f .I flavour option is given, where .I flavour is a directory directory tree under ezjails root dir (default: .I /usr/jails/flavours). See section .B FLAVOURS below for more details. Options for newly created jails are read from .B ezjail.conf, refer to ezjail.conf(5) for more information. .SH ezjail-admin delete removes a jail from ezjails .I EZJAIL_PREFIX/etc/ezjail/ resource directory thus preventing it from being brought up on next reboot. It then removes the .I /etc/fstab.hostname entry, if it exists. If the -w (wipe) option is given, the directory pointed to by the jail root entry is removed as well as the soft link in ezjails root dir. .SH ezjail-admin list lists all jails inside ezjails scope, together with some information on them. .SH ezjail-admin update is used to create or update ezjails basejail. Depending on the parameters given it will install a FreeBSD system from a source tree whose location is either provided in the .B ezjail.conf config file or via the -s option. If the -p or -P options are given, the base jail is given a copy of FreeBSDs ports tree, which is in turn linked into all newly created ezjails. If the -P option is given, .B only the ports tree will be checked out/updated, this can be done, while jails are running. If the -i (install only) option is given, .B ezjail-admin update only performes a .I make installworld, otherwise .I make world is invoked. .SH NOTES .B ezjail-admin update uses a temporary directory to install its world to, thus leaving intact all installed libraries, if a base jail already exists. When using the .B ezjail-admin update option, be careful to use the same FreeBSD source tree used to build the host systems world, or at least its kernel. Combining a make world in the host system with .B ezjail-admin update is considered a good idea. When a ports tree exists in base jail, a make.conf containing reasonable values for having ports in jails is created in the template jail. .SH FLAVOURS .B ezjail-admin provides an easy way to create many Jails with similar or identical properties. Currently it supports creating users, installing files and installing packages. A sample flavour config directory resides under .I EZJAIL_PREFIX/share/examples/ezjail/default/. Some typical Jail initialization actions are demonstrated and you are encouraged to use it as a template for your flavours. If a flavour is selected on Jail creation, the flavour root is being copied to the new Jails root, mostly containing an .I /ezjail.flavour . If the Jail starts up for the first time it runs a setup script found at .I /etc/rc.d/ezjail-config.sh. This script will create some users specified in the flavour config. It will then chown files specified in the flavour config. (This is to allow giving file to users that didn't exist on Jail creation time.) All packages residing under .I /pkg will be installed. Finally the script .I /ezjail.postinstall is being sourced, if it exists. .I ezjail-config.sh then removes all traces, including itself. .SH EXAMPLES ezjail-admin update -p .br ezjail-admin create -f httpd -r /jails/web12 web12.test.org 10.0.1.12 .br EZJAIL_PREFIX/etc/rc.d/ezjail.sh start web12.test.org .br EZJAIL_PREFIX/etc/rc.d/ezjail.sh stop ns.test.org .br ezjail-admin delete ns.test.org .br ezjail-admin create -x -r /jails/ns ns.test.org 10.0.2.1 .SH BUGS .B ezjail-admin does not perform paranoid checks on its variables. .SH FILES .T4 EZJAIL_PREFIX/etc/ezjail.conf .br EZJAIL_PREFIX/etc/rc.d/ezjail.sh .br EZJAIL_PREFIX/share/examples/ezjail/ .SH "SEE ALSO" ezjail(5), ezjail.conf(5), jail(8), devfs(5), fdescfs(5), procfs(5) .SH AUTHOR Dirk Engling