Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Jul 2004 19:23:10 -0400
From:      Garance A Drosihn <drosih@rpi.edu>
To:        Kirk Strauser <kirk@strauser.com>, freebsd-current@freebsd.org
Subject:   Re: CVSUP and 5.2.1 RELEASE
Message-ID:  <p06110426bd1b6a957743@[128.113.24.47]>
In-Reply-To: <200407141704.07142.kirk@strauser.com>
References:  <26075.1089753893@critter.freebsd.dk> <200407141441.23158.kirk@strauser.com> <p06110423bd1b5227bd61@[128.113.24.47]> <200407141704.07142.kirk@strauser.com>

next in thread | previous in thread | raw e-mail | index | archive | help
At 5:04 PM -0500 7/14/04, Kirk Strauser wrote:
>On Wednesday 2004-07-14, Garance A Drosihn wrote:
>
>  > Certainly.  Let's say the people in one jail are running a
>  > special package which depends on certain versions of various
>  > utilities or library versions.  And people in a different jail
>  > are running a different package which has a different set of
>  > dependencies.  Bingo.  These jails must be built with different
>  > snapshots of the userland.
>
>Is running a userspace that doesn't match the loaded kernel a
>supported configuration, defined as "one not likely to bite you
>in the butt"?

To simplify the discussion, think about it as just two things.
1) the kernel,
2) the userland (/bin, /usr/lib, /usr/includes, etc).

You can often run and older userland on the latest kernel.  In
fact, our upgrade instructions depend on this.  After all, you
end up running `make installworld' while you are using the newer
kernel -- but that `make installworld' will start off by using
programs which are left over from an earlier system snapshot.

However, the reverse is not true.  If you try to run a recent
userland on an older kernel, the newer programs and libraries
will often expect features that the older kernel does not have.

And even when the older userland does not work with the latest
kernel, it is probably true that it would not take much effort
to fix things such that a older-but-slightly-modified userland
will work just fine on a more recent kernel.  Usually it is just
a matter of making sure the older userland is recompiled with a
few key changes in the system include files.  And you might have
to do something special with a few programs, such as /bin/ps,
which know a little too much about the kernel so they have to
match the kernel.

>Even if someone wants that setup, surely it's inadvisable for
>someone to build a jail that's running a newer version of the
>OS then the host environment, isn't it?

When you say "the OS" in this context, you are really talking
about the userland.  It is true that you will probably have
trouble if you try to run a newer userland on an older kernel.
However, it is also very unlikely that you will *want* to do
that.  It is much more likely that you will want to run an
*older* userland on the most-recent kernel.

You might want to build a jail, for instance, which *looks*
like it is FreeBSD 3.x to the user, even though your machine
is really running the kernel from FreeBSD 4.10.  This is very
useful for some kinds of testing, for instance.  (although for
testing, this is usually done as a plain 'chroot' environment,
and not a full-blown jail...).

>I don't want to be argumentative, so please don't take it that
>way.  I'm genuinely interested in the subject and want to know
>how other people are maintaining their systems.

Well, I'm sure we're boring many people with this tangent, but
I hope that gives you an idea of some of the things that people
*might* want to do with multiple jailed environments.

-- 
Garance Alistair Drosehn            =   gad@gilead.netel.rpi.edu
Senior Systems Programmer           or  gad@freebsd.org
Rensselaer Polytechnic Institute    or  drosih@rpi.edu



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?p06110426bd1b6a957743>