Problem z uruchomieniem VMWare Workstation po aktualizacji Ubuntu do 8.10

Samo przejście z wersji Ubuntu 8.04 na 8.10 udało się w miarę bez większych problemów. Jednak kilka aplikacji wykorzystujących własne moduły jądra przestały funkcjonować i wymagały dodatkowej interwencji. Dotyczyło to również VMWare. A poniewaz tylko dzięki niemu mam dostęp do Windowsa, musiałem jak najszybciej usunąć problem. Niestety samo uruchomienie komendy sudo vmware-config.pl nie wystarczyło. Rekonfiguracja kończyła się błędami w stylu:

In file included from include/asm/pda.h:8,
from include/asm/current.h:19,
from include/asm/processor.h:15,
from include/linux/prefetch.h:14,
from include/linux/list.h:6,
from include/linux/module.h:9,
from /tmp/vmware-config0/vmmon-only/linux/driver.c:12:
include/asm/page.h:22:1: warning: this is the location of the previous definition
In file included from /tmp/vmware-config0/vmmon-only/linux/vmhost.h:13,
from /tmp/vmware-config0/vmmon-only/linux/driver.c:115:
/tmp/vmware-config0/vmmon-only/./include/compat_semaphore.h:5:27: error: asm/semaphore.h: No such file or directory
/tmp/vmware-config0/vmmon-only/linux/driver.c:197: error: unknown field ‘nopage’ specified in initializer
/tmp/vmware-config0/vmmon-only/linux/driver.c:198: warning: initialization from incompatible pointer type
/tmp/vmware-config0/vmmon-only/linux/driver.c: In function ‘LinuxDriver_Ioctl’:
/tmp/vmware-config0/vmmon-only/linux/driver.c:1802: error: too many arguments to function ‘smp_call_function’
make[2]: *** [/tmp/vmware-config0/vmmon-only/linux/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config0/vmmon-only] Error 2

Z pomocą przyszedł oczywiście Google. Wystarczyło tylko zainstalować odpowiedniego patcha i gotowe:


cd /tmp
wget -c http://www.insecure.ws/warehouse/vmware-update-2.6.27-5.5.7-2.tar.gz
tar zxf vmware-update-2.6.27-5.5.7-2.tar.gz
cd vmware-update-2.6.27-5.5.7-2
sudo ./runme.pl

Potem juz tylko kilka razy kliknąć ENTER i widzimy miły komunikat:

The configuration of VMware Workstation 6.x.x build-xxxxx for Linux for this running kernel completed successfully.

Pozostaje juz tylko ponowne uruchomienie VMWare.

Jeśli jednak VMWare będzie coś majaczyć o niepoprawnej wersji moduły vmmon, np.

Version mismatch with vmmon module: expecting 167.0, got 169.0

To musimy trochę bardziej się natrudzić.

cd /tmp
wget -c http://huan.pl/dropzone/vmblock.tar
wget -c http://huan.pl/dropzone/vmnet.tar
sudo mv vmblock.tar /usr/lib/vmware/modules/source/
sudo mv vmnet.tar /usr/lib/vmware/modules/source/

I teraz jeszcze vmmon:


wget -c http://huan.pl/dropzone/vmmon.tar
tar xf vmmon.tar
cd vmmon-only/include

otwieramy plik iocontrols.h i edytujemy linie:

#define VMMON_VERSION (169 << 16 | 0)

w miejsce numeru wersji wstawiamy odpowiedni dla naszej wersji VMWare, czyli jesli komunikat brzmial „Version mismatch with vmmon module: expecting 167.0, got 169.0” to zamieniami 169 na 167:

#define VMMON_VERSION (167 << 16 | 0)

plik zapisujemy, nastepnie kompresujemy cale archiwum i wrzucamy na swoje miejsce:

cd /tmp
rm -f vmmon.tar
tar -c vmmon-only > vmmon.tar
sudo mv vmmon.tar /usr/lib/vmware/modules/source

Teraz pozostaje juz tylko uruchomienie sudo vmware-config.pl, ktory skompiluje moduły.

2 komentarze to “Problem z uruchomieniem VMWare Workstation po aktualizacji Ubuntu do 8.10

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *