Copyright © 2001-2003 by Volker Kuhlmann 07 May 2003 Location: http://volker.dnsalias.net/linux/ Installing VMware express 2.0.4 on SuSE Linux 8.2 ================================================= This text is based on earlier versions for SuSE Linux 7.2, 7.3, 8.1. Applies to: ---------- SuSE Linux 8.2 Kernel 2.4.20-4GB (presumably all kernel versions shipped with 8.2) VMware 2.0.4 express VMware-express-2.0.4-1142.i386.rpm (last VMware express version) Symptom: ------- During the configuration of vmware (by running vmware-config.pl as root), a suitable module can't be found, and the subsequent compilation of the vmware kernel modules fails. Additionally, the vmware modules fail to compile on kernel version 2.4.7 and up. VMware express 2.0.4 will not work with the vmware modules shipped by SuSE (I did not investigate which one or whether both are at fault). Cause: ----- VMware does not run on kernels newer than about 2.4.3 (or 2.4.7). SuSE does not use kernel module versions in their kernels and thus has no modversions.h, and does not install version.h in a place where it can be found. VMware has not updated their module code for newer kernels. VMware takes no interest in whether people who purchased VMware Express can still use it on a current Linux system. Solution: -------- Replace the module source code with a patched version which actually compiles. All following steps need to be done as root. 1) Install the kernel source, package kernel-source-2.4.20.SuSE-30.i586.rpm (This package was updated by SuSE, but I guess for this purpose the version on the distributipon CDs will do equally well.) Note: unlike for SuSE 7.3, it is not necessary to do anything with the kernel sources. They just have to be installed. Note: it is necessary that the currently running kernel matches the installed kernel source. 2) Install vmware, package VMware-express-2.0.4-1142.i386.rpm Do not run vmware-config.pl yet. 3) Install the patched module source code Download ftp://platan.vc.cvut.cz/pub/vmware/vmware-any-any-update30.tar.gz and unpack it somewhere. cd /usr/lib/vmware/modules/source tar -xpzf vmware-any-any-update30.tar.gz cd vmware-any-any-update30 ./runme.pl This will install patched module source, patch the vmware binary, and patch the vmware service startup/shutdown script /etc/init.d/vmware. The new /etc/init.d/vmware now can be used with chkconfig/insserv. It also asks whether to run vmware-config.pl now - you might as well. You can do it later, but vmware won't run until you've done it. The patched module source is compiled, and new modules are installed, replacing the SuSE-supplied ones. 4) Fix the status output of the vmware service startup script Download http://volker.dnsalias.net/linux/vmware/VMwareexpress-2.0.4-SuSE8.1service.diff.gz and apply with gunzip < VMwareexpress-2.0.4-SuSE8.2service.diff.gz | patch -p0 5) Provide a missing symlink: ln -s ../../etc/init.d/vmware /usr/sbin/rcvmware This lets you start the vmware networking with rcvmware start/stop, like any other service. 6) Decide whether you want to load the vmware modules at boot If yes, run: chkconfig -a vmware If no, you can start (and stop) them any time with: rcvmware start rcvmware stop vmware can now be started by any user. Volker