Guide: Compiler Marionnet sur une distribution Debian-like

Faisons tout en tant que root, c'est un peu plus simple:

sudo su

Le mot de passe root vous sera demandé.

Vous pouvez installer quelques dépendances depuis les paquets:

apt-get update
apt-get install -y ocaml-native-compilers ocaml-compiler-libs camlp4\* \
                   liblablgtk2-gnome-ocaml-dev graphviz uml-utilities \
                   bridge-utils vde2 gcc xserver-xephyr make gettext xterm bzr

Ceci est nécessaire pour installer VDE2 depuis les sources, ce qui est plus ou moins nécessaire (les paquets Ubuntu pour VDE2 semble un peu vieux; ils peuvent fonctionner, mais compiler la dernière version ne fait pas de mal):

apt-get install -y g++ subversion autoconf automake libtool

Créez un dossier temporaire:

mkdir ~/tmp

Maintenant vous devez installer VDE2. Vous pouvez soit utiliser les paquets ou bien le compiler depuis les sources. Suivant votre distribution, compiler depuis les sources ne devrait pas être nécessaire, mais les paquets de Ubuntu semblaient un peu vieux.

Voici comment installer VDE2 depuis les paquets:

apt-get install -y vde2

Un utilisateur nous a signaler qu'il fallait aussi taper cette ligne sur Ubuntu 9.04:

apt-get instsall -y libvdeplug2

Voici comment compiler VDE depuis les sources:

cd ~/tmp
svn co https://vde.svn.sourceforge.net/svnroot/vde/trunk/vde-2 vde_svn
cd vde_svn
mkdir m4 # This was needed the last time I tried, on 2009-05-29
autoreconf -fi
./configure && make && make install

Télécharger, compiler et installez la dernère version de ocamlbricks:

cd ~/tmp
bzr get --verbose lp:ocamlbricks/0.94.x ocamlbricks
cd ~/tmp/ocamlbricks
make && make install

Télécharger, compiler et installez la dernière version de marionnet:

cd ~/tmp
bzr get --verbose lp:marionnet/0.94.x marionnet
cd ~/tmp/marionnet
make && make install

Téléchargez et installez les fichiers systèmes des machines et routeurs virtuels, vous aurez besoin d'un peu d'espace libre sur votre disque dur pour cette étape:

cd /usr/local/share/marionnet/

# --- Télécharger :
wget http://www.marionnet.org/downloads/marionnet_from_scratch/0.94.x/filesystems_guignol.tar.gz
wget http://www.marionnet.org/downloads/marionnet_from_scratch/0.94.x/filesystems_machine-debian-wheezy.tar.gz
# --- Désarchiver :
tar xvf filesystems_guignol.tar.gz
tar xvf filesystems_machine-debian-wheezy.tar.gz rm -f filesystems_*.tar.gz

# --- Le composant routeur est un lien symbolique :
for i in machine-guignol-*.conf; do M=${i%.conf}; ln -s $M router-${M#machine-}; done
for i in machine-guignol-*.conf; do ln -s $i router-${i#machine-}; done

Téléchargez et installez le noyau UML:

cd /usr/local/share/marionnet/
wget http://www.marionnet.org/downloads/marionnet_from_scratch/0.94.x/kernels_linux-3.2.64-ghost.tar.gz tar xvf kernels_linux-3.2.64-ghost.tar.gz rm -f kernels_linux-3.2.64-ghost.tar.gz

Configuration après l'installation

Une fois l'étape précédente terminée, Marionnet fonctionnera correctement, mais il y a quelques fonctionnalités optionnelles qui demandent à être configurées. Nous avons une page dédiée pour configuration de marionnet apres installation.