The one obvious thing is that Ubuntu 12.04 LTS is a real beta and not on the supported host OS for Workstation 8.0.2 but it might help the linux gurus if you share the logs.
This patch worked for me on an identical setup - ubuntu 12.04 adn WS 8.0.2 run sudo /usr/bin/vmware-installer -u vmware -workstation. Then reinstal lWS 8.0.2 bundle land immediately aplply the shell sllclript that is tarred with the patch itself.
Works everytime. If for some reason you need to uninstall WS again make sure to completely uninstall before you run the patch script again
lsmod | grep vm*
After rrunning the vmware uninstaller the above files shoudl not exist you need only check one of them to be sure. Then run the command belove as root.
rm -fr /etc/vmware
rm -fr /etc/vmware-vix
rm -fr /usr/lib/vmware-vix
rm -fr /var/run/vmware
rm -fr /var/log/vmware-installer
rm -rf /usr/lib/vmware This must be run in orde rto reinsatll the patch
rm -fr /usr/lib/vmware-ovftool
There appear to be two changes in the linux kernel between Ubuntu 11.10 (linux 3.0.0) and Ubuntiu 12.04 beta (linux 3.2.0) that affect VMWare. I run workstation 8.0.2, but the changes will affect player and server as well.
1: A structure that is referenced in VMware network code converts a pointer to a member of an embedded structure
2: Network device operations structure drops a field that is initialised by VMware
I succeeded in getting VMware workstation 8.0.2 running with linux 3.2.0-16 on Ubuntu 12.04 after:
1: Un-tar /usr/lib/vmware/modules/source/vmnet.tar to a directory you can write to (eg /tmp, /var/tmp or your desktop or home directory) - this creates a directory vmnet-only
2: Apply the attached patch to the un-tarred source (run patch in the directory from step 1 - the patch file was created from the parent directory of vmnet-only)
3: Save the original source tar file as /usr/lib/vmware/modules/source/vmnet.tar.orig
4: create a new /usr/lib/vmware/modules/source/vmnet.tar from the patched source (with 'sudo tar cf /usr/lib/vmware/modules/source/vmnet.tar vmnet-only' in the directory from step 1)
5: Start the vmware player/workstation/....
Because these are changes to the linux kernel ABI, both VMWare Player and VMWare Server will be affected in addition to VMWare Workstation. As player seems to be a component of workstation, but the issue is with the vmnet kernel module, my patch should be valid for the version of player that matches Workstation 8.0.2.
My patch makes assumptions about when the Linux ABI changes occurred. In one case, it assumed 3.0.0 as the boundary, and in the other, it assumes 3.2.0. As I am not a kernel developer, but see the differences between 3.0.0 (Ubunu 11.10) and 3.2.0 (Ubuntu 12.04LTS beta), I am not sure whether the version checks for 3.0.0 or 3.2.0 are corrrect for the changes. All that I can claim is that VMware workstation 8.0.2 successfully compiled and installed the vmnet kernel module on my system running 12.04LTS beta 64-bit, after applying the attached patch.
vmnet.diffs 2.6 K
I am not and never will be a kernel programmer. I rely on OPC (Other peoples code). Yet the patch and shell script referenced in the link above worked for me right out of the box on Ubuntu 12.04 with kernel 3.2.x. I have made rolling upgrades to 12.04v from Ubuntu 11.10. The install of WS 8.0.2 on Ubuntu 12.04 LTS has enabled me to use WS to create a Windows 2008 Server R2 VM with Hyper-V installed where I created a Windows 8 Hyper-V VM. I was able to do this only because of the work by Ulli and Mr. Mattson and of course the developers of the WS 3.2 patch. I want to take this opportunity to thank all of you who have made PC Virtualization the amazing construct it is!!
Many thanks indeed for creating the patch and the instructions.
saved my day. thank you
to mfelker: THANK YOU!!! this was a problem ive been having for 2 days now since ive upgraded my laptop to ubuntu 12.04. i didnt have time to google it until now, which is a couple days after upgrading, but when i did i found your post with the link to the script that patches vmnet. i was also wondering myself how to remove vmware workstation 8 because i thought i might need to if the patch got messed up and you even provided that information which is very useful in and of itself. thanks so much!!!
Thanks, this worked for me as well!!!!
@tim.frost, you are awesome! I am not an expert in tarring, patching, etc. but was able to follow your instructions and they worked great. Adding just a little more detail on commands to use would make this even more accessible by less expert people, though I suppose less expert people are not the typical installers of VMware on Linux.
Thank you for your effort to help others and make Ubuntu and VMware powerful tools for real people.
The patch from @tim.frost also works without modification on VMWare 8.0.3. Thanks for providing this; the VMWare workstation technology preview did not work well for me on Ubuntu 12.04, but 8.0.3 + the above patch works great.
Update: I had to patch vmnet yet again after re-installing Ubuntu 12.04, so I wrote a quick script to automate Tim's fix. Perhaps most folks have upgraded to VMware 9.0, but if you have not, perhaps this will still be useful.
vmware-fix-vmnet 811 bytes
Regarding working on VMware Workstation 8 v. 8.0.3 & VMware Player 4 v. 4.0.3
I would add that it requires one slight modification which is to edit the patch-modules_3.2.0.sh script on lines 7 & 8
Otherwise the script will complain about versions.
It's sad that VMware has not fixed this issue yet. Great that the user community has stepped up.
vmware workstation 8.0.4 is out, and I had really hoped that support for 12.04 as a host O.S. would be included by now; unfortunately it is not. The patch file provided by Tim Frost still works as posted on this version. I do not have the above-mentioned patch-modules script; I just follow the instructions in his post above to apply the patch, and everything works fine. Thanks again, Tim.
For Tim's step 2, the patch command that worked for me was 'patch -d vmnet-only < vmnet.diffs' from the parent directory that contains both vmnet-only and vmnet.diffs.
Brilliant. Thanks so much for this patch.