BSD Jails: Difference between revisions

From Leo's Notes
This page was last edited on 13 December 2012, at 06:52.
No edit summary
No edit summary
Line 18: Line 18:
To ensure the jail gets started on boot, add the following to your <code>/etc/rc.conf</code> file
To ensure the jail gets started on boot, add the following to your <code>/etc/rc.conf</code> file
  jail_enable="YES"
  jail_enable="YES"
  jail_svn_name="svn"
  jail_jail_name_name="jail_name"
  jail_svn_hostname="svn.home.steamr.com"
  jail_jail_name_hostname="jail_name.home.steamr.com"
  jail_svn_ip="10.1.1.20"
  jail_jail_name_ip="10.1.1.20"
  jail_svn_devfs_enable="YES"
  jail_jail_name_devfs_enable="YES"
  jail_svn_rootdir="/usr/jail/svn"
  jail_jail_name_rootdir="/usr/jail/jail_name"
  jail_svn_mount_enable="YES"
  jail_jail_name_mount_enable="YES"
  jail_svn_fstab="/etc/jails/fstabs/svn"
  jail_jail_name_fstab="/etc/jails/fstabs/jail_name"
  jail_svn_vnet_enable="YES"
  jail_jail_name_vnet_enable="YES"


Add to <code>/etc/jaials/fstabs/svn</code>
Add to <code>/etc/jails/fstabs/jail_name</code>


  /usr/src        /usr/jail/svn/usr/src  nullfs  rw      0 0
  /usr/src        /usr/jail/jail_name/usr/src  nullfs  rw      0 0
  /usr/ports      /usr/jail/svn/usr/ports nullfs  rw      0 0
  /usr/ports      /usr/jail/jail_name/usr/ports nullfs  rw      0 0


Start the jail using the rc scripts
Start the jail using the rc scripts


  /etc/rc.d/jail start svn
  /etc/rc.d/jail start jail_name


== Managing Jails ==
== Managing Jails ==
Line 46: Line 46:


*http://www.scottro.net/qnd/qnd-jail.html
*http://www.scottro.net/qnd/qnd-jail.html
*http://articles.slicehost.com/2007/9/5/introduction-to-svnserve
*http://articles.slicehost.com/2007/9/5/introduction-to-jail_nameserve

Revision as of 06:52, 13 December 2012

Creating a new BSDJail

  1. mkdir -p /usr/jail/<jail name>
  2. cd /usr/src
  3. make buildworld
  4. make installworld DESTDIR=/usr/jail/<jail name>
  5. make distribution DESTDIR=/usr/jail/<jail name>
  6. mount -t devfs devfs /usr/jail/<jail name>/dev

Starting a Jail Manually

jail -n <jail name> /usr/jail/<jail name> <jail name> 10.1.1.20 /bin/sh

Note that this is a one-time thing. If you want it persistent, continue reading on...

Starting Jails Automatically

To ensure the jail gets started on boot, add the following to your /etc/rc.conf file

jail_enable="YES"
jail_jail_name_name="jail_name"
jail_jail_name_hostname="jail_name.home.steamr.com"
jail_jail_name_ip="10.1.1.20"
jail_jail_name_devfs_enable="YES"
jail_jail_name_rootdir="/usr/jail/jail_name"
jail_jail_name_mount_enable="YES"
jail_jail_name_fstab="/etc/jails/fstabs/jail_name"
jail_jail_name_vnet_enable="YES"

Add to /etc/jails/fstabs/jail_name

/usr/src        /usr/jail/jail_name/usr/src   nullfs  rw      0 0
/usr/ports      /usr/jail/jail_name/usr/ports nullfs  rw      0 0

Start the jail using the rc scripts

/etc/rc.d/jail start jail_name

Managing Jails

jls   #get the jid 
jexec <jid> sh
jail# echo "enable_sshd=\"YES\"" >> /etc/rc.conf
jail# /etc/rc.d/sshd start