| author | Tomas Zeman <tzeman@volny.cz> |
| Thu, 01 Dec 2011 13:40:21 +0100 | |
| changeset 18 | 24a81ad5593d |
| parent 6 | f712e7140d1c |
| permissions | -rw-r--r-- |
|
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. |