I have upgraded to Ubuntu 17.10 (from 17.04). Everything seems to work, however, VMware Workstation 12 does not startup anymore. No messages generated. Please help.
3 Answers
You need to upgrade to VMWare Workstation 14. Workstation 12 will not run with the kernel (4.13) in Ubuntu 17.10 unless you patch it. Patch available here: https://github.com/mkubecek/vmware-host-modules/commit/b50848c985f1
Run the following commands in Terminal to Patch (there are two ways to do this):
Patch Procedure 1:
Gain root user access:
sudo su
tar xvf vmmon.tar
tar xvf vmnet.tar
wget -O ./vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c
vim vmnet-only/bridge.c
cd vmmon-only/
make
cd ../vmnet-only/
make
cd ..
mkdir /lib/modules/4.13.0-16-generic/misc
cp *.o /lib/modules/4.13.0-16-generic/misc
insmod /lib/modules/4.13.0-16-generic/misc/vmmon.o
insmod /lib/modules/4.13.0-16-generic/misc/vmnet.o
rm /usr/lib/vmware/lib/libz.so.1/libz.so.1
ln -s /lib/x86_64-linux-gnu/libz.so.1 /usr/lib/vmware/lib/libz.so.1/libz.so.1
vmware-networks --start
exit
Run VMWare as a normal user:
/usr/lib/vmware/bin/vmware
OR
Patch Procedure 2:
Get into your home directory, or somewhere you can store files temporarily:
cd ~ [YOUR DIRECTORY]
Copy the vmmon source tar ball to your temporary location:
cp /usr/lib/vmware/modules/source/vmmon.tar
Extract the tar ball:
tar xf vmmon.tar
Download the modified file and overwrite the one from the tar ball:
wget -O ./vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c
Wrap up the newly modified files into a tar ball replacing the original one:
sudo tar cf /usr/lib/vmware/modules/source/vmmon.tar vmmon-only
Rebuild the VMware kernel modules:
sudo vmware-modconfig --console --install-all
Reboot your system:
sudo reboot
Sources to patch:
https://communities.vmware.com/thread/571370?start=0&tstart=0
AND
Ubuntu 17.10 Upgrade Broke VMWare Workstation 12.5
EVEN BETTER, I recommend upgrading to Workstation 14, which will remove Workstation 12.
Run the following commands in Terminal to install VMware Workstation Player 14:
mkdir ~/vmware
cd ~/vmware
wget -c https://download3.vmware.com/software/player/file/VMware-Player-14.1.1-7528167.x86_64.bundle
OR
Download it here:
https://my.vmware.com/en/web/vmware/free#desktop_end_user_computing/vmware_workstation_player/14_0
Give the package permissions:
sudo chmod u+x VMware-Player-14.1.1-7528167.x86_64.bundle
Finally, install:
sudo ./VMware-Player-14.1.1-7528167.x86_64.bundle
As soon as the installer starts, please follow on screen instructions to complete the installation.
Select I accept the terms in the license agreement and then Click on Next. Update on startup; select yes (if you want).
Feedback; select yes or no.
License Key is optional (can be left blank).
Click Install on next screen.
Close when finished.
UNINSTALLATION
sudo vmware-installer -u vmware-player
Hope this helps.

- 1,454
-
I cannot upgrade to Player 14. My processor (Intel® Core™2 Duo CPU T9300 @ 2.50GHz × 2) is too old. So my only option is to patch the kernel(?). Can you explain exactly how to do that please? – user86019 Jan 21 '18 at 10:46
-
I've updated my answer to show how to patch for those that cannot run VMWare workstation 14. – Dave Jan 21 '18 at 21:50
-
Thanks for your reply. However, I receive some errors. Best thing I should do is to re-install Ubuntu 17.4. (dir 4.13.0-16-generic does not exist). Also "vim vmnet-only/bridge.c΅ shows an editor but then what? Make in vmmon-only seems to work. Make in vmnet-only produces errors. Any comments? – user86019 Jan 24 '18 at 15:33
-
cc1: some warnings being treated as errors scripts/Makefile.build:308: recipe for target '/usr/lib/vmware/modules/source/vmnet-only/bridge.o' failed make[2]: *** [/usr/lib/vmware/modules/source/vmnet-only/bridge.o] Error 1 Makefile:1550: recipe for target 'module/usr/lib/vmware/modules/source/vmnet-only' failed make[1]: *** [module/usr/lib/vmware/modules/source/vmnet-only] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-4.13.0-25-generic' Makefile:120: recipe for target 'vmnet.ko' failed make: *** [vmnet.ko] Error 2 – user86019 Jan 24 '18 at 15:34
-
Try replacing the 4.13.0-16-generic with whatever your kernel is. For example, mine is currently 4.13.0-31-generic. – Dave Jan 25 '18 at 00:18
-
I did replace it. Still got error messages. I have re-installed 17.04 and VMware works again. Thanks for trying to help me. – user86019 Jan 25 '18 at 16:37
Using Charly's script on superuser.com/questions/1328401/vmware-workstation-vmmon-broken-on-ubuntu-18-04/, I was able to build the needed modules for kernel 4.15.0-29-generic on 16.04LTS. There is a typo at the end of the script, there should not be a line return between sudo ln -s /lib/x86_64-linux-gnu/libz.so.1
and /usr/lib/vmware/lib/libz.so.1/libz.so.1
Another addition I would recommend is to add sudo /etc/init.d/vmware restart
command to the end of the above script.
So the actual solution script with tweaks is:
#!/bin/bash
VMWARE_VERSION=workstation-12.5.9
TMP_FOLDER=/tmp/patch-vmware
rm -fdr $TMP_FOLDER
mkdir -p $TMP_FOLDER
cd $TMP_FOLDER
git clone https://github.com/mkubecek/vmware-host-modules.git
cd $TMP_FOLDER/vmware-host-modules
git checkout $VMWARE_VERSION
git fetch
make
sudo make install
sudo rm /usr/lib/vmware/lib/libz.so.1/libz.so.1
sudo ln -s /lib/x86_64-linux-gnu/libz.so.1 /usr/lib/vmware/lib/libz.so.1/libz.so.1
sudo /etc/init.d/vmware restart
Note that this will only work for Workstation 12.5.9
, you can easily tell which version you have by running vmware --version
and you can probably update the script to have it work for other versions... but I haven't tested that.

- 117,780

- 111
Another add-on to this fix under Ubuntu 20.04 LTS and Ubuntu 22.04 LTS:
You must invoke vmplayer in the shell or within the desktop icon using the full path to the file, like this:
ubuntu@ubuntu:~$ /usr/lib/vmware/bin/vmplayer
If you don't in these later versions of Ubuntu, apparently a different version of some shared libraries are selected and the application crashes with a segmentation fault instead! This includes fixing the desktop icon info file.
FYI - You can also choose to install vmplayer itself in a different location than /usr/lib
if you want. For example, to install under /opt
instead, just add the argument --set-setting vmware-installer libdir /opt
when running the installer bundle.

- 11