Create a Jail
From HateotU
Create a Jail
Replace <jailname> with the Name of your Jail
Create ZFS Pool
- Create a new zfs pool
zfs create zfs0/<jailname>
- Set the mountpoint option for the new zfs pool
zfs set mountpoint=/export/jails/<jailname> zfs0/<jailname>
- Mount the new Pool
zfs mount -a
If You're not using ZFS, creat a new Folder
mkdir /export/jails/<jailname>
Install the Jail
cd /export/jails/ bsdinstall jail <jailname>/
- Follow the steps on the screen until the installation is finished
/etc/jail.conf
vi /etc/jail.conf
- If there are already Jails installed at the host, create a new section for your Jail at the End of the file
<jailname> { host.hostname = "<jailname>.hateotu.de"; ip4.addr = <ip the new Jail should have>; }
- If there are no Jails installed, and so, the file is empty, paste the following content into the file
allow.raw_sockets = 0; exec.clean; exec.system_user = "root"; exec.jail_user = "root"; exec.start += "/bin/sh /etc/rc"; exec.stop = "/bin/sh /etc/rc.shutdown"; exec.consolelog = "/var/log/jail_${name}_console.log"; interface="bge0"; mount.devfs; mount.fstab = "/etc/fstab.$name"; allow.mount; allow.set_hostname = 0; allow.sysvipc = 0; path = "/export/jails/${name}"; <jailname> { host.hostname = "<jailname>.hateotu.de"; ip4.addr = <ip the new Jail should have>; }
- If the Jail needs special options to be set, you should enter them into the section of the Jail under the IP Adress:
<jailname> { host.hostname = "<jailname>.hateotu.de"; ip4.addr = <ip the new Jail should have>; <option> = <value> }
Get things ready
- Create a fstab file for the Jail
touch /etc/fstab.<jailname>
Work with the Jail
- To start the Jail, type
service jail start <jailname>
- To stop the Jail, type
service jail stop <jailname>
- To restart the Jail, type
service jail restart <jailname>
- To open a shell on your Jail, type:
jexec <jailname> <shell>