freebsd/jail-install-via-sysinstall
author Tomas Zeman <tzeman@volny.cz>
Sat, 15 Dec 2012 19:49:24 +0100
changeset 26 6f9a1760b066
parent 6 f712e7140d1c
permissions -rw-r--r--
coffeescript/frameworks: zappa, rem-js
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     1
http://phaq.phunsites.net/2006/06/25/streamline-userland-installation-on-freebsd-jails-using-sysinstall/
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     2
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     3
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     4
Streamline Userland Installation On FreeBSD Jails Using SysinstallPosted
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     5
by: admin  :  Category: jails
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     6
There is probably a dozen of ways to install the userland for use within
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     7
a FreeBSD jail.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     8
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     9
Most of the documentation I saw (including the man page itself) refers
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    10
to building/installing from the source tree. Sysinstall seems only to be
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    11
considered for additional post-configuration tasks and is always run
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    12
inside of the jail.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    13
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    14
While building/installing a jail may have it’s advantages in respect to
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    15
security flaws or bugs in general, installing through sysinstall may be
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    16
faster and probably less error prone.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    17
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    18
It is in fact very easy to run sysinstall in non-interactive mode on the
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    19
host itself (not inside the jail!) from a shell script, which may
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    20
optionally run some post-installation tasks afterwards.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    21
By the fact that sysinstall can use the same command line arguments as
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    22
if given through a configuration file, a single line could be used in
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    23
your script to achieve this:
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    24
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    25
# sysinstall nonInteractive=yes \
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    26
_ftpPath=ftp://ftp2.ch.freebsd.org/pub/FreeBSD \
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    27
mediaSetFTP distSetMinimum installRoot=/var/jails/192.168.0.1 \
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    28
releaseName=6.1-RELEASE installCommit
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    29
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    30
This line would cause sysinstall to run in non-interactive mode, useing
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    31
ftp://ftp2.ch.freebsd.org/pub/FreeBSD as it’s download source.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    32
DistSetMinimum selects the smallest userland possible while installRoot
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    33
is given to define destination directory.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    34
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    35
releaseName ist required to choose the actual release and must be set to
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    36
your main release (e.g. 6.0-RELEASE, 6.1-RELEASE, etc). If you don’t set
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    37
it, sysinstall will use the release name of your currently installed
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    38
userland (e.g. 6.1-RELEASE-p1) and will most definitly fail because
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    39
there exists no such distribution set for download.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    40
It is also possible to choose a different release like 5.5-RELEASE to be
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    41
installed inside a jail. You must consider though that most tools will
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    42
run expect those that interact with the kernel directly (ps, top, etc).
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    43
In generall I would not recommend mixing releases expect you have a very
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    44
good reason to do so.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    45
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    46
Don’t forget to add the installCommit command at the end otherwise
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    47
sysinstall won’t do anything at all.
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    48
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    49
By examing the sysinstall man page you will find other options to select
f712e7140d1c freebsd/jail-install-via-sysinstall
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    50
different (or build customer) dist sets.