VNUML ebuilds
What & why is this?
VNUML (Virtual Network User Mode Linux) is a tool that makes
it easy to set up virtual networks between several instances of
User Mode Linux.
To date, there is no official ebuild available for installing VNUML on
gentoo linux,
so I went looking for an inofficial one and found
Jacques Landru's
(
tarball), which he
uses for building a gentoo live cd.
I added some code to the ebuild and tried to make it particularly easy to use.
Where can I get it and how can I use it?
Quick guide (you should be root for all steps but the first):
- Download this tarball (mirror)
- Open /etc/make.conf and check that the variable PORTDIR_OVERLAY is set. If this is not
the case, set it to /usr/local/portage.
(If it is set, but to a different value, you'll have to unpack the tarball and move the files manually in the next step)
- Run tar -xvjf vnuml-portage-overlay-1.6.4-1.tar.bz2 -C /
- Run emerge vnuml
This should take care of everything and install VNUML for you, including a UML kernel and a root-filesystem. Mind you,
downloading and unpacking the filesystem is done automatically, but it might take a while, so be patient ;-).
Details: VNUML depends on several programs which have to be installed in advance - the ebuild should take care of this.
It also depends on several Perl modules, not all of which are available in portage, so I wrote the necessary ebuilds
and added them to the tarball.
Furthermore, I wanted to make the installation as easy as possible, so I wrote separate ebuilds for the UML kernel and the
root-filesystem which are available on the
VNUML download site.
This gives you the ability to update either of these separately (and easily, if you have a newer ebuild).
If you don't
turn on any USE flags when emerging VNUML, both the UML kernel and the root-filesystem will automatically be installed, too.
If you wish to use your own UML kernel or your own root-filesystem, set the USE flags
custom-kernel
or
custom-rootfs, respectively.
E.g., installing
only VNUML can be done by calling
USE="custom-kernel custom-rootfs" emerge vnuml.
If you use your own kernel or
root-filesystem, take care to place them (or symlinks to them) in /usr/local/share/vnuml/kernels/linux and
/usr/local/share/vnuml/filesystems/root_fs_tutorial (emerge should also remind you of this).
Since VNUML is written entirely in Perl, installing it on a platform other than x86 should be no problem, but I have no
means of trying this out, so the ebuild uses
KEYWORDS="~x86" for now.
Which versions are the ebuilds for?
The tarball includes ebuilds for VNUML 1.6.4-1, UML kernel 2.6.12.3-bs9-xt-3m and root-filesystem 0.3.3.
Final disclaimer
If you install and use the ebuilds, you do so on your own risk!
AFAIK, there are no severe bugs in the ebuilds, but
if you manage to break your system by using them, it's not my fault!
If you want to improve any of the ebuilds, please do so - I left many comments explaining what the code does, so it shouldn't
be too difficult to understand. If you have found a bug, or better yet, a bugfix, please drop me a mail @ tulkas@uni-koblenz.de