Jails creation

Blake Covarrubias blake at ekalb.net
Tue Oct 27 19:49:34 UTC 2009


Hi,

This is how I perform binary updates and installation of jails. I used  
a file called install.cfg to hold my sysinstall variables.

### install.cfg ###
installVarDefaults
releaseName=7.2-RELEASE
_ftpPath=
ftp://ftp.freebsd.org/pub/FreeBSD/

mediaSetFTP
dists=base man
distSetCustom
installRoot=/srv/jails/example.domain.tld/root
installCommit
################

# Install
mkdir -p /srv/jails/example.domain.tld/root
sysinstall configFile=/root/install.cfg loadConfig

freebsd-update works within the jail to update patches. For migrating  
point releases (7.1 to 7.2) after updating the host OS I use the  
commands below.

env UNAME_r=7.1-RELEASE-p5 freebsd-update -b /srv/jails/ 
example.domain.tld/root -r 7.2-RELEASE upgrade
freebsd-update -b /srv/jails/example.domain.tld/root install
/etc/rc.d/jail restart <jail>
freebsd-update -b /srv/jails/example.domain.tld/root install


Works great in my environment.

--
Blake Covarrubias

On Oct 27, 2009, at 11:41 AM, Miroslav Lachman wrote:

> Tonix (Antonio Nati) wrote:
>
>> Miroslav Lachman ha scritto:
> [...]
>>> You are not the first one with this idea. You can easily use  
>>> nullfs mount of directories from base system, but people mostly  
>>> prefer independent directory with jail install shared by many jails.
>>>
>>> And sometimes somebody needs jails with modified binaries, so it  
>>> is not possible to share theme with base system in all cases.
>>>
>>> There are many ways to get jails running without sources, it is up  
>>> to you to choose one.
>
> [...]
>
>> I have nothing against shared dirs, but my question is this: why  
>> the basic jail creation command requires compilation? Given the  
>> fact jail must have exactly the same version of base system, why  
>> the base create command dos not simply copy the existing binaries?  
>> It would avoid local source, remote packages, etc...
>
> It is not true. Jail command does not requires compilation, nor  
> exactly same version. I am running 6.x version jail on system with  
> 7.2 and you can run 32bit (i386) jail on 64bit (amd64) system.
> The `jail` command is there just for starting the jail, not for  
> building it. The jail even does not need to be a full installed  
> system!
> There are too many different scenarios with jails, that there can  
> not be "one command to satisfy them all".
> It is up to administrator to prepare the best environment for his/ 
> her needs.
>
> If you need the full copy of the base system, you can do it really  
> easily (by tar as was suggested by Vincet Hoffman or dump &  
> restore), and if you do it for each jail, you loose the benefits of  
> shared read-only base directory (you will need more disk space and  
> more memory).
>
> If you do not want to spend some time by compilation, you can  
> install the jail from installation media you already have from  
> system install.
>
> cd /some/media/7.2-RELEASE/base
> mkdir /path/to/myjail
> setenv DESTDIR /path/to/myjail
> sh install.sh
>
> That's all! It is too simple in contrast to source build or manually  
> copy something from base.
>
> If you are using ZFS, you can use snapshots and clones...
>
> And many more scenarios exist.
>
> I am CCing freebsd-jail@, it is more appropriate list to contionue.
>
> Miroslav Lachman
> _______________________________________________
> freebsd-isp at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-isp
> To unsubscribe, send any mail to "freebsd-isp-unsubscribe at freebsd.org"



More information about the freebsd-isp mailing list