freebsd/jail-install-via-sysinstall
author Tomas Zeman <tzeman@volny.cz>
Mon, 26 Dec 2011 12:25:08 +0100
changeset 21 1de8726d7ca9
parent 6 f712e7140d1c
permissions -rw-r--r--
web-design/tables: html table gallery + examples (via css)

http://phaq.phunsites.net/2006/06/25/streamline-userland-installation-on-freebsd-jails-using-sysinstall/


Streamline Userland Installation On FreeBSD Jails Using SysinstallPosted
by: admin  :  Category: jails
There is probably a dozen of ways to install the userland for use within
a FreeBSD jail.

Most of the documentation I saw (including the man page itself) refers
to building/installing from the source tree. Sysinstall seems only to be
considered for additional post-configuration tasks and is always run
inside of the jail.

While building/installing a jail may have it’s advantages in respect to
security flaws or bugs in general, installing through sysinstall may be
faster and probably less error prone.

It is in fact very easy to run sysinstall in non-interactive mode on the
host itself (not inside the jail!) from a shell script, which may
optionally run some post-installation tasks afterwards.
By the fact that sysinstall can use the same command line arguments as
if given through a configuration file, a single line could be used in
your script to achieve this:

# sysinstall nonInteractive=yes \
_ftpPath=ftp://ftp2.ch.freebsd.org/pub/FreeBSD \
mediaSetFTP distSetMinimum installRoot=/var/jails/192.168.0.1 \
releaseName=6.1-RELEASE installCommit

This line would cause sysinstall to run in non-interactive mode, useing
ftp://ftp2.ch.freebsd.org/pub/FreeBSD as it’s download source.
DistSetMinimum selects the smallest userland possible while installRoot
is given to define destination directory.

releaseName ist required to choose the actual release and must be set to
your main release (e.g. 6.0-RELEASE, 6.1-RELEASE, etc). If you don’t set
it, sysinstall will use the release name of your currently installed
userland (e.g. 6.1-RELEASE-p1) and will most definitly fail because
there exists no such distribution set for download.
It is also possible to choose a different release like 5.5-RELEASE to be
installed inside a jail. You must consider though that most tools will
run expect those that interact with the kernel directly (ps, top, etc).
In generall I would not recommend mixing releases expect you have a very
good reason to do so.

Don’t forget to add the installCommit command at the end otherwise
sysinstall won’t do anything at all.

By examing the sysinstall man page you will find other options to select
different (or build customer) dist sets.