52. cdist-type__jail(7)

Manage FreeBSD jails

Jake Guffey <jake.guffey--@--eprotex.com>

52.1. DESCRIPTION

This type is used on FreeBSD to manage jails.

52.2. REQUIRED PARAMETERS

state
Either “present” or “absent”, defaults to “present”.
jailbase
The location of the .tgz archive containing the base fs for your jails.

52.3. OPTIONAL PARAMETERS

name
The name of the jail. Default is to use the object_id as the jail name.
ip
The ifconfig style IP/netmask combination to use for the jail guest. If the state parameter is “present,” this parameter is required.
hostname
The FQDN to use for the jail guest. Defaults to the name parameter.
interface
The name of the physical interface on the jail server to bind the jail to. Defaults to the first interface found in the output of ifconfig -l.
devfs-ruleset
The name of the devfs ruleset to associate with the jail. Defaults to “jailrules.” This ruleset must be copied to the server via another type. To use this option, devfs-enable must be “true.”
jaildir
The location on the remote server to use for hosting jail filesystems. Defaults to /usr/jail.

52.4. BOOLEAN PARAMETERS

stopped
Do not start the jail
devfs-disable
Whether to disallow devfs mounting within the jail
onboot
Whether to add the jail to rc.conf’s jail_list variable.

52.5. CAVEATS

This type does not currently support modification of jail options. If, for example a jail needs to have its IP address or netmask changed, the jail must be removed then re-added with the correct IP address/netmask or the appropriate line (jail_<name>_ip=”...”) modified within rc.conf through some alternate means.

52.6. MESSAGES

start
The jail was started
stop
The jail was stopped
create:
The jail was created
delete
The jail was deleted
onboot
The jail was configured to start on boot

52.7. EXAMPLES

# Create a jail called www
__jail www --state present --ip "192.168.1.2" --jailbase /my/jail/base.tgz

# Remove the jail called www
__jail www --state absent --jailbase /my/jail/base.tgz

# The jail www should not be started
__jail www --state present --stopped \
   --ip "192.168.1.2 netmask 255.255.255.0" \
   --jailbase /my/jail/base.tgz

# Use the name variable explicitly
__jail thisjail --state present --name www \
   --ip "192.168.1.2" \
   --jailbase /my/jail/base.tgz

# Go nuts
__jail lotsofoptions --state present --name testjail \
   --ip "192.168.1.100 netmask 255.255.255.0" \
   --hostname "testjail.example.com" --interface "em0" \
   --onboot --jailbase /my/jail/base.tgz --jaildir /jails

52.8. SEE ALSO

52.9. COPYING

Copyright (C) 2012 Jake Guffey. Free use of this software is granted under the terms of the GNU General Public License version 3 (GPLv3).