I eventually decided to give the free VMware Server a try. Setting it up on Windows was pretty simple, just double click and then click through the Wizard. However, installing it on Ubuntu 9.04 is a non-trivial task and took me a little while to complete.
- Launch Synaptic package manager and make sure you have linux-header, linux-source, gcc and binutils installed.
- Download the .tar.gz package from VMware web site (VMware-server-2.0.1-156745.x86_64.tar.gz in my case).
- Extract the files then run the the installation script as super user
sudo vmware-install.pl
- The installer will prompt you with half a thousand questions, I just use the default value for most of them.
- Eventually the installer will start compiling and loading kernel modules, most of them will go through fine but the VSOCK module installation will fail with the following error message.
Unable to make a vsock module that can be loaded in the running kernel:
Ignore this insmod error for now and continue to finish the installation.
insmod: error inserting '/tmp/vmware-config0/vsock.o': -1 Unknown symbol in module - Apply the following patch to vmware-config.pl, this fixes the insmod error above so we can re-run it to complete the VSOCK module installation.
+++ /usr/bin/vmware-config-tools.pl 2008-12-01 16:55:59.000000000 +0100 @@ -4121,6 +4121,11 @@ return 'no'; } + if ($name eq 'vsock') { + print wrap("VMWare config patch VSOCK!\n"); + system(shell_string($gHelper{'mv'}) . ' -vi ' . shell_string($build_dir . '/../Module.symvers') . ' ' . shell_string($build_dir . '/vsock-only/' )); + } + print wrap('Building the ' . $name . ' module.' . "\n\n", 0); if (system(shell_string($gHelper{'make'}) . ' -C ' . shell_string($build_dir . '/' . $name . '-only') @@ -4143,6 +4148,12 @@ if (try_module($name, $build_dir . '/' . $name . '.o', 0, 1)) { print wrap('The ' . $name . ' module loads perfectly into the running kernel.' . "\n\n", 0); + + if ($name eq 'vmci') { + print wrap("VMWare config patch VMCI!\n"); + system(shell_string($gHelper{'cp'}) . ' -vi ' . shell_string($build_dir.'/vmci-only/Module.symvers') . ' ' . shell_string($build_dir . '/../')); + } + remove_tmp_dir($build_dir); return 'yes'; } - Now run the vmware-config.pl script as super user and the VSOCK module should compile and install fine now.
sudo vmware-config.pl
- Now run
vmwarefrom the command prompt to launch vmware UI in your browser. You will see following error message as shown below:
- Click on "Add Exception", which will pop up another dialog. Click on "Get Certificate" and then "Confirm Security Exception" to add the VMware URL to the exception list.

- Finally, you should see the login screen. You need to login as the root user but Ubuntu does not set password for root user by default. Therefore, you first need to set the password by executing
sudo passwd root
after setting the password just login as root and enjoy.
did you ever consider that if someone needed the help on this page that the step "apply the following patch to vmware-config.pl" may be WAY over their heads?
ReplyDeleteThis is how you can apply the patch:
ReplyDeleteTo run it open a terminal, and do the following:
1. CD into the directory where the Pearl script is
>cd /path/to/vmware-config.pl
2. Make the script executable
>chmod +x vmware-config.pl
3. Patch!
>sudo patch /usr/bin/vmware-config.pl /path/to/vmware-config.pl
Hope this helps.
And you can download the patch from here:
ReplyDeletehttp://taurinocerveza.com/scripts/vmware-config.pl
thanks Anonymous :)
ReplyDeleteOscar,
ReplyDeleteThanks a ton for this patch.
I had working vmware server installation and it went south after Ubuntu Karmic upgrade. I brought back the older Kernel only to see Xorg going beserk on my CPU utilization. After I reinstalled Jaunty, I tried couple of patches from vmware/ubuntu forums and none of them cured the vsock insmod error. To my amazement my kernel seemed to be compiled with the same gcc version as the gcc on my box to the third level and I had right set of headers and libraries.
Vmware server 2.0.1 (64bit) works fine on Jaunty Kernel
2.6.28-11-generic with your patch.
I am a bit curious in how your patch fixed the vsock module and will try to read through your code the next oppotrtunity I get.
Thanks a Lot!
Seems to work in Karmic - only place I could find the solution, thanks!
ReplyDelete