• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[Howto] Qemu + Accelerator auf Ubuntu 6.10 installieren.

nbkr

Guru
Hallo,

anbei ein kleines Howto zum Thema Qemu. Ich dachte wenn es in einem Unterforum passt dann hier.

Das Howto lässt theoretisch auch als Shellscript verwenden welches die notwendigen Schritte automatsich macht. Dieses Funktion habe ich aber selbst noch nicht getest. Im Zweifelsfall das Howto also besser manuell nachvollziehen.

Das Originaldokument findet sich übrigens unter: http://www.benjaminfleckenstein.de/de/anl_qemu.html

Wenn ich das Howto irgendwann mal aktualisiere dann vermutlich nur dort, da ich dort mehr oder minder sofort drüber stolpere.

//Edit: Bugfix

Code:
#! /bin/bash
#
## Titel: 
# Installation von qemu 8.2 und qemu-accelerator 1.3.0pre9
#
## Autor:
# Benjamin Fleckenstein, http://www.benjaminfleckenstein.de
#
## Version
# 1.2
#
## Datum
# 2006-30-12
#
## Vorüberlegungen:
# Qemu ist ein freier Emulator der es ermöglicht mehre Betriebssystem
# virtuell auf einem PC laufen zu lassen. Qemu ist Open Source und kostenfrei
# zu haben. Somit ist es für mich besser zu Handhaben als der ebenfalls kostenlose
# aber nicht frei Emulator "VMWare Server".
#
# Zu Qemu gibt es auch einen Accelertaor welcher die Ausführungsgeschwindigkeit der
# virtuellen Maschinen erhöht. Dieser ist kostenlos aber nicht Open Source. Das ist
# zwar Schade aber aktzeptabel. Damit man diesen Beschleuniger nutzen kann muss man
# Qemu aus den Quellen selbst kompilieren.
#
## Voraussetzungen:
# Ubuntu 6.10
# checkinstall (braucht man zwar nicht unbedingt, es ist aber schöner Qemu als Paket
#               zu haben um es leicht deinstallieren zu können).
# automake
# autoconf
#
## Quellen:
# http://wiki.ubuntuusers.de/QEMU
# http://doc.ubuntu-fr.org/qemu
# http://ubuntuforums.org/showthread.php?t=311324
# http://lists.debian.org/debian-user/2006/11/msg01294.html
# http://fabrice.bellard.free.fr/qemu/
# http://kidsquid.com/cgi-bin/moin.cgi/QemuOnLinux
#
## Vereinbarungen:
# $PROJECTDIR = Verzeichnis in dem die Quellen laden
#
## Lizenz dieser Anleitung:
# http://creativecommons.org/licenses/by/2.0/de/deed.de
#
## Anmerkung:
# Theoretisch kann man diese Anleitung auch als Bashscript laufen
# lassen so dass alles automatisch erledigt wird. Ich empfehle dann
# vorher noch ein export PROJECTDIR=/wo/auch/immer auszuführen. Dann
# ist das Projektverzeichnis gleich richtig gesetzt. 
#
# Abschließend aber eine Warnung. Ich selbst habe dieses Shellscriptfunktionalität
# nicht getestet somit kommt es ohne jede Garantie ob es funktioniert und ich
# übernehme natürlich auch keine Haftung für mögliche Schäden am System.
#####################################################################################

# Los gehts - Projektverzeichnis erstellen
mkdir $PROJECTDIR
cd $PROJECTDIR

# Qemupakete herunterladen 
wget http://fabrice.bellard.free.fr/qemu/qemu-0.8.2.tar.gz
wget http://fabrice.bellard.free.fr/qemu/kqemu-1.3.0pre9.tar.gz

# Entpacken
tar -xzf qemu-0.8.2.tar.gz
tar -xzf kqemu-1.3.0pre9.tar.gz

# Weitere Pakete installieren
# linux-headers passend zum Kernel
sudo apt-get install linux-headers-`uname -r`

# Sonstige Pakete
sudo apt-get install zlib1g-dev
sudo apt-get install texi2html

# Das folgende Paket zieht einen ganze Rattenschwanz von anderen 
# Paketen nach sich. Lässt sich aber wohl leider nicht vermeiden.
sudo apt-get install libsdl1.2-dev

# Qemu sollte am besten mit gcc-3.4 übersetzt werden. Bei Ubuntu
# ist aber gcc-4.0 aktuell. Deshalb muss man den alten Compiler nachinstallieren
sudo apt-get install gcc-3.4

# Qemu produziert einen Fehler beim "make". Deshalb muss man in der Datei
# usb-linux.c die Zeile entfernen.
cat qemu-0.8.2/usb-linux.c | sed  "/#include <linux\/compiler.h>/d" > qemu-0.8.2/usb-linux.c.tmp
mv qemu-0.8.2/usb-linux.c.tmp qemu-0.8.2/usb-linux.c

# Qemu kompilieren
cd $PROJECTDIR/qemu-0.8.2
./configure --cc=gcc-3.4
make
sudo checkinstall -y

# Den Accelerator kompilieren
cd $PROJECTDIR/kqemu-1.3.0pre9/
./configure
make

# Anschließend noch Checkinstall aufrufen. Das läuft zwar in einen
# Fehler aber der Accelerator wird kompiliert und installiert. Auch das .deb
# Paket wird erstellt. Aber es lässt sich nicht installieren. Man muss es manuell
# bearbeiten damit es sich installieren lässt.
sudo checkinstall -y --install

# Paketinhalt auspacken
dpkg-deb -x kqemu_1.3.0pre9-1_i386.deb tmp

# Kontrolldaten auspacken
dpkg-deb -e kqemu_1.3.0pre9-1_i386.deb tmp/DEBIAN

# Daten löschen
find tmp/lib/modules/` uname -r `/ -maxdepth 1 -type f -exec rm {} \;

# Altes Debfile umbenennen
mv kqemu_1.3.0pre9-1_i386.deb kqemu_1.3.0pre9-1_i386.deb.old

# MD5Summen anpassen
cp tmp
md5sum `find . -type f | grep -v "DEBIAN/" | awk '/.\// { print substr($0, 3) }'` > DEBIAN/md5sums

# Paket wieder zusammensetzen. Nicht über die Fehlermeldung wundern. Die stört nicht.
cd ..
dpkg-deb -b tmp kqemu_1.3.0pre9-1_i386.deb

# Anschließend die Datei installieren
sudo dpkg -i kqemu_1.3.0pre9-1_i386.deb

# Modul laden
sudo modprobe kqemu major=0

# Damit das Modul auch beim nächsten Start automatisch geladen wird
# muss man noch etwas tun. 
cp /etc/modules .
sudo chmod 0777 ./modules
echo kqemu >> ./modules
sudo cp modules /etc

echo "options kqemu major=0" >> kqemu.modprobe
sudo cp kqemu.modprobe /etc/modprobe.d/kqemu

# Außerdem müssen die Zugrifsrechte richtig gesetzt werden. Das erledigt
# udev.
echo KERNEL==\"kqemu*\", NAME=\"%k\", MODE=\"0666\" > kqemu.rules
sudo chown root:root kqemu.rules
sudo mv kqemu.rules /etc/udev

# und noch verlinken
sudo ln -s ../kqemu.rules /etc/udev/rules.d/50-kqemu.rules

# Das sollte es gewesen sein. Danach kann man Qemu inkl. Accelerator nutzen. Wie das geht
# findet sich sich auf der Qemu Homepage:
# http://fabrice.bellard.free.fr/qemu/
 
Oben