VMWare Player 2.0.4 unter Linux mit 2.6.26 Kernel

Die letzten zwei Tage habe ich mich damit herumgeschlagen, den aktuellen, freien VMWare Player (Version 2.0.4) auf meiner Debian sid/unstable-Kiste wieder zum Laufen zu bekommen, nachdem ich den Kernel auf die aktuellste Debian-Paket-Version gebracht hatte (2.6.25).
Leider war VMWare damit gar nicht einverstanden und wollte unbedingt, seine Module wieder kompiliert haben, was an sich nicht problematisch ist, wenn die Kompilierung nicht fehlschlagen würde.
Tatsächlich haben viele Leute mit neuem Kernel ab Version 2.6.24 wohl das Problem, dass die Konfigurations-Routine von VMWare nicht mehr richtig greift.
Findige Leute haben dafür aber gleich passende Patches geschrieben, die einige Fehler beheben konnten.
Eine sehr ergiebige Seite dafür ist diese hier: How-to Install VMware Player / Workstation on 2.6.25 Kernel

Leider hat der Patch bei mir nicht komplett geholfen, da beim Kompilieren des vmmon-Modules ein Kernel-Symbol namens „init_mm“ verwendet wird, welches spätestens ab Kernel Version 2.6.25 nicht mehr vorhanden ist.
Irreführend ist dabei aber die Fehlermeldung, die einem erklärt, dass man wahrscheinlich leicht veränderte Header-Source-Dateien angegeben hat und man solle doch den Kernel nochmal mit genau diesen Header-Dateien neu kompilieren:

WARNING: „init_mm“ [/tmp/vmware-config0/vmmon-only/vmmon.ko] undefined!
CC /tmp/vmware-config0/vmmon-only/vmmon.mod.o
LD [M] /tmp/vmware-config0/vmmon-only/vmmon.ko
make[1]: Leaving directory `/usr/src/kernels/linux-2.6.25.2′
cp -f vmmon.ko ./../vmmon.o
make: Leaving directory `/tmp/vmware-config0/vmmon-only‘
Unable to make a vmmon module that can be loaded in the running kernel:
insmod: error inserting ‚/tmp/vmware-config0/vmmon.o': -1 Unknown symbol in module
There is probably a slight difference in the kernel configuration between the
set of C header files you specified and your running kernel. You may want to
rebuild a kernel based on that directory, or specify another directory.

Daraufhin hatte ich nämlich mehrmals den Kernel neu kompiliert, die Sources in verschiedenen Variationen probiert, bis ich schliesslich beim allerneuesten, originalen (non-Debian-Paket-)Kernel 2.6.26 gelandet war und den selben Fehler wieder bekam.
Schliesslich bin ich über einen Post in der VMWare Community gestolpert, wo das fehlende „init_mm“-Symbol angesprochen wurde (Link).
Ich habe daraufhin herausgefunden, dass es eine Kernel-Konfigurations-Einstellung unter der Rubrik Kernel Hacking namens Enable unused/obsolete exported symbols gibt, die man aktivieren sollte, wenn man will dass Module erfolgreich Kompiliert werden, obwohl sie ungültige/veraltete/nicht vorhandene Symbole verwenden.
Zusammen mit den oben bereits erwähnten Patches in der 2.6.26er-Variante (Link) habe ich dann endlich den VMWare Player zum laufen bekommen.
Das Modul vmblock wollte zwar immer noch nicht Kompilieren, aber im Gegensatz zu vmmon ist es nicht notwendig, um VMWare fertig zu konfigurieren. Es handelt sich hierbei lediglich um die Funktionalität, zwischen Gast- und Host-System Daten per Drag’n’Drop zu transferieren – für mich nicht interessant.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>