PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : kompilierter Kernel auf Vmware hat kein Netz


Fabeltier
14.05.08, 09:31
Hallo,
ich versuche seit einiger Zeit auf VMware einen Kernel zu bauen. Die Kernels laufen soweit alle, nur leider habe ich mit den neuen Kerneln keine Verbindung zum Host system mehr, d.h. ping kommt nie zurueck und scp bzw ssh geht gar nicht mehr. Die Verbindung zum Internet funktioniert auch nicht mehr.

Ich nutze VMware auf einem WinXP, als Guest laeuft Debian Sid. Die Verbindung laeuft ueber ein TAP auf Win, und ist bei VMware auf NAT eingestellt. Der Kernel, den ich gerade ausprobiere ist ein 2.6.25er.

Liegt das an einer Kerneleinstellung, die ich nicht mitkompiliere oder an Vmware internen Dingen? Wie verbinde ich die VMware ans Hostsystem?

stefan.becker
14.05.08, 19:07
Warum tust du dir das an? Wird auch nicht viel besser laufen.

Egal: Das liegt sicherlich an irgendetwas. Glaskugeln sind aktuell kaputt. Also poste du Infos. Z. B. die Kernelconfig.

Fabeltier
16.05.08, 18:06
Tja, stimmt war sicherlich etwas vage, ich habe es weiter versucht und hatte die vmware tools nicht ganz kompiliert!

Desweiteren habe ich festgestellt, das zwar ein kompilierter 2.6.18er unterstuetzt wrid, jedoch noch kein 2.6.25er - das Perl Script der VMtools schlaegt fehlt mit den selber erstellten kernel-headers.

Mein Ziel ist eigenen Kernelcode auszuprobieren und zu kompilieren. Hierbei geht es mir mom v.a. um KGDB. Ich will versuchen mit diesem auf die VM zu linken und den Kernel dort. Das ist einfacher als immer zwei Computer dafuer zu benutzen.

Da die hier aber daemlicherweise in der Arbeit alle nur tolle XP Kisten benutzen, hab ich die VM eben nun auf nem XP aufgesetzt. Aber wie gesagt, VMTools installieren und es klappt (ist eigentlich recht gut auf den Seiten von VMware im Netz beschrieben).

stefan.becker
20.05.08, 06:32
Die aktuellen VMWARE Tools lassen sich nicht komplett installieren bei einem Kernel ab 2.6.24.

Lösung, getestet mit FC9 und SchnickSchnackBuntu Gast:

http://peterc.org/2008/62-how-to-install-vmware-tools-on-ubuntu-hardy-804-under-vmware-fusion.html

Fabeltier
22.05.08, 17:45
Die aktuellen VMWARE Tools lassen sich nicht komplett installieren bei einem Kernel ab 2.6.24.
Lösung, getestet mit FC9 und SchnickSchnackBuntu Gast:
http://peterc.org/2008/62-how-to-install-vmware-tools-on-ubuntu-hardy-804-under-vmware-fusion.html

Danke, hab's mittlerweile auch gemerkt und bin auf den 2.6.18er ausgewichen ;-) Nebenbei hab ich's nun auch noch mit Virtualbox und Qemu versucht und +/- hinbekommen.

Ich geb hier mal nen kleinen Ueberblick falls jemand aehnliche Probleme haben sollte und mich das schon zunaechst etwas Nerven gekostet hat (nja, Howtos gibt's ja eig auch schon genug, kann meine Notizen aber auch nachreichen, falls jemanden die genaue Vorgehensweise interessieren sollte).

Vmware (Server Paket) hat bei mir keinen shared folder (mehr?), die Netzanbindung lief beim Guest mit dem Instalationssystem (debian) einwandfrei, ggf muss ein proxy gesetzt werden:
export http_proxy="http://[ip des proxy]:[port]Das laesst sich auch gut in die /etc/profile packen.
Fuer einen selber gebauten Kernel muss man die vmware tools kompilieren, das bringt einem ein Kernelmodul fuer die Netzwerkanbindung.

Virtualbox scheint so aehnlich zu funktionieren, allerdings heissen die "vmware tools" unter Virtualbox "Guest Additions" und werden auch als .iso eingemountet, diese oeffnet man dann im Guest System und laesst (unter Linux) das Linux-guest-additions.run script (oder so aehnlich) ablaufen. Das brachte mir dann einen zusaetzlichen Shared Folder, den ich per
mount -t vboxsf shared /mnt/shared
einmounten konnte. Den Mountpoint (also den Ordner) muss man vorher natuerlich erst noch erstellen und kanns dann auch gleich in die /etc/fstab schreiben. Ausserdem baut das Script gleich noch ein Kernelmodul, das einem die Netzwerkanbindung ermoeglicht (sollte vboxnet heissen).

Qemu, laeuft etwas anders - ich habe qemu zu Hause raufgehauen, also als Host hier auch Debian. Der Kernel vom Host sollte Bridge und TAP/TUN unterstuetzen. Den Accelerator kqemu, der nur fuer x86 Architekturen was bringt liess sich bei mir allerdings nicht kompilieren (Kernel 2.6.25r3) und mir wegen Qemu wieder nen alten Kernel bauen, hatte ich bisher keine Lust ;-)
Qemu simuliert verschiedene Ethernetkarten (ne2k_pci, ne2k_isa, rtl8139, smc92c111), bei mir liefs mit der ersten - das ist im Guestkernel dann die Option unter den Network Devices fuer den support der NE2000. Ferner benoetigt man auf der Hostmachine die Konfiguration der bridge (IP normalerweise 10.0.2.2) und ein /etc/qemu-ifup script. Achja und im qemu-startbefehl sollte man das device angeben. Die Qemudokumentation hilft da sehr gut weiter. Das guest system hat dann IP 10.0.2.15. Qemu unter Windows braucht ein TAP Device, dazu downloaded man das OpenVPN Paket und installiert lediglich ein weiteres TAP (wenn man kein VPN braucht).

Danke fuer Eure/Deine Hilfe

Fabeltier
22.05.08, 19:25
kuerzer Nachtrag: kqemu kompiliert bei mir doch, hatte die Fehlermeldung uebersehn (wg module-assistent und Faulheit)

Ggf muss man noch die Sourcen anpassen, da haeufiges kompilieren von Kerneln, einige Eintraege veraendert, das laesst sich jedoch folgendermassen wieder fitbekommen, um zB kqemu bauen und modproben zu koennen:
config des momentanten kernel holen
cp /boot/config-`uname -r` /usr/src/linux-`uname -r`/.config
einmal mit make menuconfig oeffnen und speichern

cp /lib/modules/`uname -r`/build/Makefile /usr/src/linux-`uname -r`/Makefile

in /usr/src/linux-`uname -r`/Makefile den Eintrag der EXTRAVERSION checken und auf die version magic setzen ("append to version" Zusatz beim backen)

in /usr/src/linux-`uname -r`/include/config/kernel.release auch Version Magic Eintrag checken (kann evtl doppelt drinstehn also 2.6.25asdfasdf, dann einfach einmal asdf rausloeschen und speichern)

in /usr/src/linux-`uname -r`/include/linux/utsrelease.h selbige Version Magic ueberpruefen und ggf doppelten Eintrag loeschen.

Danach lies sich das Modul perfekt durchkompilieren und modproben und hoffentlich klappts naechste Woche nun auch endlich mal mit der Nachbarin ;)