So, I picked up VMWare Workstation 11.1 on sale last night. After downloading the .bundle file, I tried to install it by opening a terminal and typing:
sudo sh VMware-Workstation-Full-11.1.0-2496824.x86_64.bundle
But it failed because the VMWare installer could not find the Linux kernel headers to match the kernel version. I thought that odd since the kernel and headers install together, so I poked around a bit. I used
to find that I was running Linux kernel 3.16 generic. However, when I went into Synaptic to look for the headers, I found only kernel 3.19 generic files.
After some research, I figured out that when I updated from Ubuntu 14.10 to 15.04, apparently the kernel did not upgrade with the rest of the system. That’s VERY odd, but it does explain why VMWare Workstation 10.2 never complained after the OS upgrade. Essentially, I was running 15.04 with 14.10’s kernel. That’s something that I’ve never seen happen before. Interesting.
But, that’s easy to fix. I used Synaptic to select the Linux 3.19 kernel for installation. Synaptic in turn chose a number of supporting files to go with the kernel, including the headers. I accepted its list and installed them all, then rebooted. No issues.
Now I was beyond the kernel version under which VMWare Workstation 11.1 would install. When building the kernel modules, the VMWare network module would not compile under Linux kernel 3.19. I knew that would happen, and found this post with the solution. I literally cut and pasted the commands as presented below, and the Workstation 11.1 kernel modules compiled with no problems. Simply type or cut-and-paste the following commands individually in sequence into your terminal:
sudo -s [then enter your root password]
curl http://pastie.org/pastes/9934018/download -o /tmp/vmnet-3.19.patch
tar -xf vmnet.tar
patch -p0 -i /tmp/vmnet-3.19.patch
mv vmnet.tar vmnet.tar.SAVED
tar -cf vmnet.tar vmnet-only
rm -r vmnet-only
vmware-modconfig –console –install-all
Your VMWare modules will all now compile before your very eyes. The output should look like this:
bob@bob-ubuntu:~$ sudo -s
[sudo] password for bob:
root@bob-ubuntu:~# curl http://pastie.org/pastes/9934018/download -o /tmp/vmnet-3.19.patch
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1596 100 1596 0 0 3138 0 –:–:– –:–:– –:–:– 3135
root@bob-ubuntu:~# cd /usr/lib/vmware/modules/source
root@bob-ubuntu:/usr/lib/vmware/modules/source# tar -xf vmnet.tar
root@bob-ubuntu:/usr/lib/vmware/modules/source# patch -p0 -i /tmp/vmnet-3.19.patch
patching file vmnet-only/driver.c
patching file vmnet-only/userif.c
root@bob-ubuntu:/usr/lib/vmware/modules/source# mv vmnet.tar vmnet.tar.SAVED
root@bob-ubuntu:/usr/lib/vmware/modules/source# tar -cf vmnet.tar vmnet-only
root@bob-ubuntu:/usr/lib/vmware/modules/source# rm -r vmnet-only
root@bob-ubuntu:/usr/lib/vmware/modules/source# vmware-modconfig –console –install-all
Stopping VMware services:
VMware Authentication Daemon done
VM communication interface socket family done
Virtual machine communication interface done
Virtual machine monitor done
Blocking file system done
make: Entering directory ‘/tmp/modconfig-s6OlQ6/vmmon-only’
Using kernel build system.
/usr/bin/make -C /lib/modules/3.19.0-18-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
And so on. When it’s finished, just type ‘exit’ twice to close the terminal and you are done.
Now I am happily running VMWare Workstation 11.1 under Ubuntu host, which is now running the “correct” kernel version. Very nice. Kudos to VMWare for their continuing excellent support for Linux.