Installation von BackTrack 2 Final unter VMWare

Diese Anleitung beschreibt das Vorgehen bei der Installation der Security Live-CD BackTrack in einer virtuellen Umgebung und die Hürden die dabei zu überwinden sind. Die Vorteile einer Festinstallation liegen auf der Hand: Man benötigt keine CD, muss nicht die aktuelle Arbeitsumgebung verlassen um in das Live-System zu booten und Einstellungen werden direkt gespeichert. Die Festinstallation ist also die ideale Lösung, so lang man keine native Treiberunterstützung von z.B. W-LAN-Karten im PCMCIA-Slot benötigt.

Eine fertige Anleitung (“BackTrack Hard Drive Installation”, PDF) wird bereits von den Entwicklern der CD bereitgestellt und dient als Grundlage dieser Beschreibung.

Wurden die Partitionen wie in der o.g. Anleitung über fdisk angelegt und das Dateisystem darauf eingerichtet, kann anschließend mit der Installation begonnen werden. Wichtig ist, dass vor dem Start des “BackTrack Installers” die Partitionen wie folgt gemounted werden:


cd /tmp
mkdir boot
mkdir bt2
mount /dev/sda1 boot
mount /dev/sda3 bt2

Der Installer wird anschließend mit folgenden Optionen konfiguriert:

  • Source (BackTrack-CD): /boot
  • Install BackTrack to: /tmp/bt2
  • Write MBR to: /dev/sda
  • Installation method: Real

Nach Abschluss des Kopiervorgangs schreibt die offizielle Anleitung vor, die CD aus dem Laufwerk zu entnehmen und neu zu starten. Doch dann schon wenig später das böse Erwachen: Das eben in der virtuellen Maschine installierte BackTrack bootet nicht – warum?
Grund dafür ist, dass die Installationsroutine vergisst, den Linux-Kernel auf die Festplatte zu kopieren und den Bootloader in den MBR zu schreiben.
Vielen Dank für diesen Hinweis an meinen Kollegen Steffen Tröscher.

Das wird nun in wenigen Schritten nachgeholt.

Zunächst muss das Terminal geöffnet und darin folgende Schritte ausgeführt werden:


cp /boot/vmlinuz /tmp/bt2/boot/
cp /boot/splash.bmp /tmp/bt2/boot/
chroot /tmp/bt2/
lilo

Zur Erläuterung: Die ersten beiden Schritte kopieren den komprimierten Linux-Kernel wie er beim Booten geladen wird auf die Festplatte. Im zweiten Schritt muss sozusagen über chroot das Root-Verzeichnis des aktuellen Systems auf die frisch installierte Version geändert werden um darin den Bootloader (lilo) zu installieren.

Nach diesen Maßnahmen noch über den Befehl exit die Chroot-Umgebung verlassen und das eben installierte BackTrack das erste Mal in der virtuellen Maschine starten.

Installation der VMWare-Tools

Um die VMWare Tools in BackTrack 2 zu installieren, sind folgende Schritte notwendig.

1. Im VMWare Menü den Eintrag VM -> Install VMWare Tools wählen.
2. Anschließend den von VMWare virtuell als CD bereitgestellten Datenträger mounten: mount /mnt/hdc_cdrom
3. Nun die VMWare-Tools in das cd /tmp-Verzeichnis kopieren: cp /mnt/hdc_cdrom/VMWareTools*.tar.gz /tmp und dort entpacken: tar xvzf VMWareTools*.tar.gz
4. Für die reibungslose Installation der VMWare-Tools in BackTrack müssen nun noch einige Symlinks und Dummy-Dateien eingerichtet werden:

for x in 0 1 2 3 4 5 6
do
ln -s /etc/rc.d/ /etc/rc$x.d
done
touch /etc/init.d/network /etc/init.d/networking

Grundsätzlich könnte an dieser Stelle nun die Installation gestartet werden – wäre da nicht noch ein Problem :-) Spätestens beim Versuch das Modul vmxnet (Netzwerktreiber für VMWare) zu kompilieren reagiert die Installation mit folgender Fehlermeldung:


Building the vmxnet module.
Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config1/vmxnet-only'
make -C /lib/modules/2.6.20-BT-PwnSauce-NOSMP/build/include/.. SUBDIRS=$PWD SRCR
OOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-2.6.20'
CC [M] /tmp/vmware-config1/vmxnet-only/vmxnet.o
/tmp/vmware-config1/vmxnet-only/vmxnet.c: In function `vmxnet_netpoll':
/tmp/vmware-config1/vmxnet-only/vmxnet.c:1058: error: too many arguments to func
tion `vmxnet_interrupt'
make[2]: *** [/tmp/vmware-config1/vmxnet-only/vmxnet.o] Error 1
make[1]: *** [_module_/tmp/vmware-config1/vmxnet-only] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.20'
make: *** [vmxnet.ko] Error 2
make: Leaving directory `/tmp/vmware-config1/vmxnet-only'
Unable to build the vmxnet module.

Glücklicherweise wird gleich mitgeliefert, an welcher Stelle dieser Fehler seine Ursache hat:
vmxnet.c:1058: error: too many arguments to function `vmxnet_interrupt'

Kurze Analyse ergab folgendes Problem:

Zeilen 991 – 997 definieren die Methode vmxnet_interrupt wie folgt:

#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 19)
static compat_irqreturn_t
vmxnet_interrupt(int irq, void *dev_id, struct pt_regs * regs)
#else
static compat_irqreturn_t
vmxnet_interrupt(int irq, void *dev_id)
#endif

Eine Abfrage der Kernel-Version von BackTrack ergibt: 2.6.20-BT-PwnSauce-NOSMP - AHA! Die Kernelversionsnummer ist also nicht kleiner als 2.6.19 wodurch gemäß oben beschriebenem Quelltext die Methode vmxnet_interrupt mit zwei Parametern aufgerufen werden muss.
Ein Blick in die beim Kompilieren Fehler verursachende Zeile 1058 zeigt aber, dass hier diese Unterscheidung nicht mehr getroffen wird (davon auf jeden Fall betroffen sind VMware Workstation Versionen < = 5.5.4).

Zeile 1058:

vmxnet_interrupt(dev->irq, dev, NULL);

Eigentlich werden bei aktueller Kernelversion (2.6.20) zwei Parameter definiert, letztendlich aber drei übergeben. Die Fehlermeldung too many arguments to function `vmxnet_interrupt’ war also Goldrichtig :-)

Jetzt wissen wir, wo der Fehler liegt, behoben ist er aber noch nicht. Dazu sind folgende Schritte notwendig:


bt ~ # cd /tmp
bt tmp # mkdir vmxnet
bt tmp # cp /tmp/vmware-tools-distrib/lib/modules/source/vmxnet.tar /tmp/vmxnet/
bt tmp # cd vmxnet
bt vmxnet # tar xf vmxnet.tar
bt vmxnet # wget http://www.andreas-kurtz.de/wp-content/uploads/2007/05/vmxnet.patch
bt vmxnet # patch -b vmxnet-only/vmxnet.c vmxnet.patch
patching file vmxnet-only/vmxnet.c
bt vmxnet # tar cf vmxnet.tar vmxnet-only
bt vmxnet # cp vmxnet.tar /tmp/vmware-tools-distrib/lib/modules/source/vmxnet.tar

Die meisten Schritte sind intutitiv klar. Zur Erklärung wie ich den Patch gestaltet habe: In Zeile 1058 wird zukünftig auch die Unterscheidung nach Kernel-Version getroffen und entsprechend viele Argumente übergeben. Anschließend sieht die korrigierte Methode so aus:


static void
vmxnet_netpoll(struct net_device *dev)
{
disable_irq(dev->irq);
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 19)
vmxnet_interrupt(dev->irq, dev, NULL);
#else
vmxnet_interrupt(dev->irq, dev);
#endif
enable_irq(dev->irq);
}

Nun sind wir fast am Ende angelangt und können die VMWare-Tools installieren. Zunächst noch die aktuelle Netzwerkverbindung herunterfahren, dass es zu keinen Problemen kommt:


ifconfig eth0 down
rmmod pcnet32

Und dann endlich die lang ersehnte Installation starten:


/tmp/vmware-tools-distrib/vmware-install.pl

Alle Fragen des Installers sind eigentlich mit Default-Werten zu bestätigen.

Anschließend sollte in der Datei /etc/modprobe.d/blacklist noch der Eintrag blacklist pcnet32 hinzugefügt werden, so dass beim nächsten Starten auch wirklich das eben kompilierte vmxnet-Modul geladen wird.

Ein vollständides VMWare-Image (sog. Virtual Appliance) von BackTrack 2 Final mit installierten VMWare-Tools steht hier zum Download bereit (624 MB).

40 Reaktionen zu “Installation von BackTrack 2 Final unter VMWare”

  1. nase

    hallo,also die anleitung von backtrack verstehe ich hinten und vorne nicht.gibt es keine einfachere lösung?
    (p.s.meine festplatte ist leer noch nicht gemountet- kein anderes betriebsystem befindet sich darauf)
    hugo

  2. Andy

    Hey,

    beschreib doch bitte mal genauer was du vor hast und wo konkret deine Probleme sind?
    Die einfachste Lösung für den Betrieb in VMWare ist, wenn du dir die fertige Appliance runterlädst, die ich zum Download bereitgestellt habe.

    Andy

  3. Nase

    hallo,ich möchte backtrack einfach installieren und als zweit betriebssytem nutzen.

    mein benutzerfreundliches linux(PCLOS)wäre dann erstes betriebssystem,
    ,so das ich beim boot zwischen backtrack oder pclinuxos entscheiden
    kann.ich denke das es doch einfacher gehen sollte backtrack zu installieren-oder täusche ich mich? :o )
    ist der weg einfacher zuerst pclos zu installieren mit dem lilobootloader,freien partionsplatz zu lassen,und danach backtrack zu installieren?

    hugo

  4. Nase

    p.s.
    ich besitze die live cd von backtrack2 hardware-technisch wird alles
    einwandfrei erkennt.

  5. Andy

    Hallo,

    eine Anleitung zur Installation von BackTrack in einer DualBoot-Konfiguration findest du hier: http://backtrack.offensive-security.com/index.php?title=Howto#Dual_Boot_Backtrack_and_Ubuntu

  6. mich

    die vm ware tools sind nicht volständig gestartet
    die funktion copy paste lässt sich nich ausführen
    netzwerk verbindung besteht aber
    hab schon versucht mit sudo dies nachzuinstallieren
    mein gast system ist xp

  7. mich

    blödsin xp ist host

  8. sven

    Hi Andy,

    bei mir hat alles super geklappt bis auf den 2ten Schritt hier:

    cp /boot/vmlinuz /tmp/bt2/boot/
    cp /boot/splash.map /tmp/bt2/boot/

  9. sven

    Es kommt der Fehler:
    cp: cannot stat ‘/boot/splash.map’ : No such file or directory
    Die Datei ist auch nicht in der bt2final.iso .
    Oder hab ich was übersehn?
    Danke im Vorraus
    Sven

  10. sven

    Ok hat sich erledigt, habe einfach splash.bmp anstelle von splash.map genommen.

  11. bin4ry

    Hey Andy,

    deine anleitung ist sehr gut. Nur im letzten schritt, während der ausführung des perl-sckirpts zur installation der vmware tools, koomt der fehler, dass er services.sh nicht nach /etc/init.d/vmware-tools kopieren kann.

  12. Florian Roth

    Hallo!
    Ich musste noch das Verzeichnis /etc/pam.d anlegen bevor ich /usr/bin/vmware-config-tools.pl starten konnte.

  13. Andy

    Danke für den Hinweis auf die /boot/splash.bmp – ist korrigiert :-)

  14. ph0o

    Danke für die BT2 VM-Copy :D
    Echt was feines für nen linux n00b.. xD

  15. bart

    Thanx andreas, i’ve been looking for this! Greetings from die Niederlande ;-)

  16. Genti

    wo kriegt man eigentlich backtrack2 her?

  17. Andy

    Hier: http://www.remote-exploit.org/backtrack_download.html

  18. itzme

    Hi,
    erstmal ein “BIG THANKS!” für deine Arbeit Andy, ich muss gestehen das ich meine Schwierigkeiten hatte!!!
    Aber ich habe da noch ein Problem, meine Tastatur funktioniert nicht unter der VM BackTrack2. Die Maus funktioniert wunderbar! Beide sind sie über USB angeschlossen, da an meinem Rechner kein PS2 Anschluss mehr vorhanden ist! Habe schon in den Einstellungen überall nachgeschaut, finde jedoch leider nix :( ! Kann mir jemand helfen?!

  19. itzme

    Hat sich erledigt!!! Trotzdem THX ;) !!!

  20. nuno

    really thx~~~~~~~~~~~~~~

    I’ve succeeded….

    god bless you~~

  21. silkomat

    Danke für das VMWare image…

    Beste Grüße und ein langes Leben

    silkomat

  22. tfs

    Hi,

    beim ausführen stolpert das script beim erstellen eine symbolischen links:

    /etc/pam.d/vmware-guestd” pointing to file “/usr/lib/vmware-tools/configurator/pam.d/vmware-questd”

    irgendjemand eine Idee????

    TFS

  23. Maxell

    Hallo Andreas,

    habe dein backtrack genommen und boote es mit vmware server,
    hier bekomme ich von vornherein die Meldung angezeigt “you do not have vmware tools installed”, ich dachte gerade das ist integriert …? :-(
    Bitte um Antwort

    Gruß

    Maxell

  24. Nightking

    Also ich begreifs von A-Z nicht… Obwohl ich alles nach Anleitung “BackTrack Hard Drive Installation” gemacht habe, kann ichs nicht installieren. Laut Anleitung sollte er nun ja die Partitionen erkennen. Wenn ich Backtrack als .iso mounte geht nur das Grafische, sprich ich kann keine Konsole öffnen usw. Wenn ichs von der live-cd starte gehts problem los, nur einfach beim installieren scheiter ich. Auf meinem zweit PC hab Backtrack als Betriebsystem und es läuft problem los. Weis jemand den Befehl wie ich den Paritionsmanager von Backtrack aufrufe? Kannte ihn mal, find den abr nicht mehr.

    Achja, also Host-Betriebsystem ist XP und hab VMware-Server.

  25. rezgar

    wo kriegt man die VMWareTools für Backtrack her ????

    ein Download Link wäre wunderbar

  26. Andy

    Wie im Beitrag unter “Installation der VMWare-Tools” bereits beschrieben:

    Im VMWare-Dateimenü unter “VM” -> “Install VMWare Tools”.

  27. Benny

    Hallo!!

    Bei der Installation von Backtrack2 auf die Festplatte stürtzt das System bei 81% Istallationsfortschritt ab!? Keine Fehlermeldung nichts!!

    Bin nach dieser Anleitung vorgegangen: http://www.offensive-security.com/documentation/backtrack-hd-install.pdf

    Kann mir jemand helfen??

    mfg

  28. Benny

    hat sich erledigt

  29. Peter

    wenn ich das VMWare-Image nutze, wie kann ich da aktuelle Treiber oder andere Update installieren?? z.B. aircrack updates oder für mein Wlan-Adapter neue treiber…

    thAnx.

  30. gghfhfh

    Ich vesuche BlackTrack auf HD zu installieren aber bei mir scheiter es schon an dem ersten Befehl.

    mkfs.ext3 /dev/sda1

    Habe die Partionen mit einem Partions-Manager gemacht und dann mit Linux Swap formatiert.

  31. MS

    Hi,
    super sche das ganze hab nur ein kleines prob.

    Im VMWare-Dateimenü unter “VM� -> “Install VMWare Tools�.
    muss vorher VMware installen würd ich sagen oder wenn ich anderes image nehme?
    oder täusch ich mich

    Gruß Malte

  32. hägga

    du darfst nur die 2. part (also die swap part) mit swap formatiern. also im fdisk nur t und dann 2 eingeben. die andren 2 also /dev/sda1 und /dev/sda3 bleiben.

  33. MS

    schon gut sorry wollte keinen stöhren^^

  34. Berlinerping

    Gibt es auch schon eine Installationsanleitung für Back Track 3 beta ?
    leider endet es bei BT3 hier ab schon :(
    cp /boot/splash.bmp /tmp/bt2/boot/
    no File

    da ja leider BT3 genauso wenig von alleine Bootet .

    LG

  35. Berlinerping

    Wobei ich sagen kann das BT 2 funzt und ich natürlich bei BT3 nicht das Verzeichnis bt2 sondern bt3 benutze, also keine *.bmp
    Somit kriege ich nicht hin das BT3 bootet :(

  36. Berlinerping

    ach und noch etwas um vmware-config-tools.pl ausführen zu können ist es notwendig im Verzeichnis /etc das verzeichnis pam.d zu erstellen sonst kan der configurator kein symlink vmware-guestd für /usr/lib/vmware-tools/configurator/pam.d/vmware-guestd erstellen
    also bevor ihr vmware-config-tools.pl ausführt

    mkdir /etc/pam.d

    dann sollte es funzen ;)

  37. Berlinerping

    aber mit BT3 kann ich noch warten bis die final version rauskommt ;)

  38. sehr

    Moin,

    danke für die gute Anleitung, endlich funktioniert der Boot-Vorgang, leider sind die erforderlichen Schritte in der original-Anleitung nicht eingetragen, ansonsten könnte man sich viel ärger und zeit ersparen ;)

    GreeTz

  39. Neuling

    hallo leute. erstmal klasse das jmd sich zeit nimmt und eine anleitung schreibt!

    wenn ich : mkfs.ext3 /dev/hda1 eingebe steht das /dev/hda1 schon gemounted ist!”will not make filesystem here”. aber ich hab alles deleted?!

    wie kann ich das lösen? bitte um rat.

  40. Nadine

    Hi wenn Ihr noch eine gute installationsanleitung braucht habe ich auch noch eine gefunden und zwar ist die unter:
    http://backtrack.1rss.de
    zu finden, die Anleitung ist auf deutsch.
    Bilder sind auch dabei, so ist eine Schritt für Schritt installation möglich, wer will kann sich das ganze auch als PDF ausdrucken lassen.
    So kann man es dann schön in ruhe testen.

    Gruß
    Nadine

Einen Kommentar schreiben