[lsb-discuss] running multiple distros (LSB-internal use)

Mark Hatle fray at mvista.com
Wed Nov 19 12:52:01 PST 2003


Wichmann, Mats D wrote:
> However there's a desire to have multiple
> distributions resident on some of the
> machines to test cross-distro compatibility
> when we do silly things like, say, muck
> with the C++ abi.  Debian has a fairly reasonable
> way to set this up, providing support
> for installing into a chroot so that you
> can run, say, "stable" on the base machine
> and "testing" inside a chroot.
> 
> Does anyone have advice on good ways to
> set this kind of thing up for rpm-distros
> in general, or for any specific distros?
> 
> I've done something like this on a machine
> here in my office which has nine different
> ia32 distros on it, but I've done those
> by cd-installs each to an empty partition;
> we don't necessarily have access to physcially
> plug media into the lsb build machines (or
> even to reboot them, for that matter), so
> a different "set up a chroot" mechanism
> is needed.

That is similar to how we do it.  Basically what we do is a clean 
install of all of the linux distros we care about (to different 
partitions on the same machine.)

We then install an additional distro (could easily be a duplicate of an 
existing) and use this as the "real" root on the machine.  All of the 
other "roots" are mounted read-only.  This machine becauses the server 
for our build and testing systems.

...doing it this way allows for only one machine to have to be manually 
accessed during installation, upgrades, or other processes...

The build and test systems (if necessary) use the information on the 
master machine to rebuild themselves.  (Basically they clone this 
machine, but everything is read/write.)  Then we mount "/proc", and 
other dynamic filesystems in each and use chroot to do host specific 
operations.

There is one _HUGE_ caveat though, especially when it comes to Red Hat 
distributions.  NPTL.  You need to make sure you are running a kernel 
that will work with all of the installed distros.  This is sometimes 
easier said then done.. :(

(Just an FYI, we do this with Mandrake, SuSE 8.2 and 9.0, Red Hat 7.2, 
7.3, 8.0 and 9.0.. and it seems to work well.. assuming the an 
appropriate kernel is running the system.)

--Mark





More information about the lsb-discuss mailing list