Get VMware Player Running on Linux
Getting VMware Player working on openSUSE Linux (Leap 15.3)
2021 November 7
Introduction to Problem
As part of a class, I had to install and use VMware Player—not a problem, VMware has a Linux-friendly installer. Hooray! Except the installer doesn’t add the necessary linux kernel signature (.der
MOK key), and has a few other issues actually running.
But each attempt to launch a VM with VMware Player would throw errors and exit:
/dev/vmmon is not present! Could not open /dev/vmmon
The web is full of these issues, most from the past year: like this post asking for help, and this one, and this one on Reddit, and one more!
Even signing the kernel module as recommended by some of the above did not work, resulting in more errors:
modprobe vmmon modprobe: ERROR: could not insert 'vmmon': Key was rejected by service vmmon: Loading of unsigned module is rejected
So it was not our configs that were having issues, this was a shared disaster.
Steps to Fix
The following are the steps I followed to get a working system. Note that, due to Secure Boot being disabled, I am not sure if the mokutil --import
and like steps have to be completed. I have not verified on a fresh install that these steps can be left out. In any case, signing the key may prove useful later on, if this issue, whatever its provenance, gets fixed later on.
- Make sure you have the latest updates to your system OS and VMware player
- Following this KB from VMware, run the following as root:
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VMware/"
/usr/src/linux-5.3.18-59.27-obj/x86_64/default/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmmon)
/usr/src/linux-5.3.18-59.27-obj/x86_64/default/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmnet)
mokutil --import MOK.der
- Disable Secure Boot in BIOS. Check with your hardware vendor for BIOS instructions.
- Double-check the location of your VMware Player
.iso
disks! - As root, run
vmware-modconfig --console --install-all
, as discussed here on VMware communities - SUCCESS!!
Finished
Hopefully the above can provide some help to someone out there who is having this issue!