Posted by: reformedmusings | May 23, 2015

Ubuntu 15.04 Kernel and VMWare Workstation 11.1 Fix

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

uname -a

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
cd /usr/lib/vmware/modules/source
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/. \
MODULEBUILDDIR= modules

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.

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Categories

%d bloggers like this: