[wellylug] Looking for a new distro

David Antliff dave.antliff at paradise.net.nz
Fri Jul 30 17:30:14 NZST 2004


On Fri, 30 Jul 2004, Ewen McNeill wrote:

> In message <E1BqOM1-0005pw-KQ at pluto.digitalnetwork.co.nz>, "John C Barstow" writ
> es:
> >What's less clear to me is how to have multiple X servers, mono
> >compilers, and GNOME instances on the same Debian box. If there's a
> >Debian way I'll stick to that (out of inertia).

In Gentoo, you can create your own ebuilds (using existing ones as a
guide) and place things into 'slots' - this lets you have multiple
versions of a single package installed at the same time. However it can
get complicated FAST if things have certain version numbering schemes.

> debootstrap the Debian flavour of your choice into a chroot, chroot into
> it, and then upgrade it to the things you want.  That'll leave you have
> multiple versions of GNOME, Mono, etc on the same box.  You'll
> probably want some NFS or bind mounts in order to bring a common working
> area into each chroot (or maybe you can use CVS/subversion/etc to copy
> between the chroots).
>
> To have multiple X servers on the same box you might be able to do that
> (and point them at different virtual ttys), or you might need to use
> something like UML and XNest.  (UML is also the best way for testing
> kernels outside of hardware related matters -- such as drivers -- where
> you really need separate test hardware.)

Chroot or UML are both good ideas but have their own shortfalls. If you're
uid root in a local chroot there's something in /proc you can use to gain
access to the parent environment, but I don't recall what it is. UML is
even easier - just use rsync/scp/ftp etc as if it were a different host.
One note in case you try it, if you're using Linux 2.6, you need to use
TUN/TAP rather than Ethertap for networking your UMLs:

# modprobe tun
# modprobe iptable_nat
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# echo 1 > /proc/sys/net/ipv4/ip_forward
# linux ubd0=root_fs ubd1=swap_fs eth0=tuntap,,,192.168.0.254 mem=128M

then inside the UML:
# ifconfig eth0 192.168.0.1 up
# route add -net 10.16.0.0 netmask 255.255.0.0 gw 192.168.0.254

You don't need to use either chroot or UML for multiple X server
instances. Just start a new server on a different VC. Or do you mean
different servers in the sense of different *X11 drivers* or *X11
versions*? Without multiple video cards using multiple drivers isn't going
to work very well.

-- 
David




More information about the wellylug mailing list