I get these errors when trying to start a VMware Workstation 26 virtual machine on Ubuntu 26.04:

You get the below errors:

  1. Could not open /dev/vmmon: No such file or directory.
    Please make sure that the kernel module ‘vmmon’ is loaded.
  2. Failed to initialize monitor device.
  3. Unable to change virtual machine power state: Transport (VMDB) error -14: Pipe connection has been broken.

To solve the issue, try one of the below steps:

Step 1: Check Secure Boot

Run:

mokutil --sb-state

If the output is:

SecureBoot enabled

Then Secure Boot might be preventing VMware’s kernel modules from loading.

For testing, you can temporarily disable Secure Boot in your ASUS BIOS:

  1. Restart your computer and press Delete to enter BIOS.
  2. Press F7 to enter Advanced Mode.
  3. Navigate to Boot ? Secure Boot.
  4. Change the Secure Boot configuration to disable Secure Boot (the available options depend on BIOS version).
  5. Save changes using F10 and restart.

Be aware that disabling Secure Boot reduces boot-chain protection. If you also use Windows with BitLocker, make sure you have your recovery key before changing the setting.

You can keep Secure Boot enabled by signing the VMware kernel modules instead, which I’ll explain if necessary.

Step 2: Rebuild VMware kernel modules

Before changing anything else, try rebuilding the VMware modules.

Install the required packages:

sudo apt update
sudo apt install build-essential linux-headers-$(uname -r) mokutil

Then rebuild the modules:

sudo vmware-modconfig --console --install-all

This should compile two kernel modules:

  • vmmon — VMware virtual machine monitor.
  • vmnet — VMware virtual networking.

VMware requires these modules to match your running Linux kernel. Support Portal

If compilation succeeds, try loading them:

sudo modprobe vmmon
sudo modprobe vmnet

Verify:

lsmod | grep -E 'vmmon|vmnet'

You should see both modules listed.

Also check:

ls -l /dev/vmmon

If /dev/vmmon exists, try starting your virtual machine again.

Step 3: If Secure Boot is enabled

If the modules compile successfully but fail to load because of Secure Boot, you can sign them instead of disabling Secure Boot.

Broadcom documents this procedure for VMware Workstation. Support Portal

First, create a signing key:

mkdir -p ~/vmware-mok
cd ~/vmware-mok

openssl req -new -x509 -newkey rsa:2048 \
  -keyout MOK.priv \
  -outform DER \
  -out MOK.der \
  -nodes \
  -days 36500 \
  -subj "/CN=VMware/"
  
chmod 600 MOK.priv

Sign both modules:

sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file \
  sha256 MOK.priv MOK.der "$(modinfo -n vmmon)"

sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file \
  sha256 MOK.priv MOK.der "$(modinfo -n vmnet)"

Import the certificate:

sudo mokutil --import MOK.der

You will be prompted to create a temporary password.

Reboot your computer:

sudo reboot

During startup, the MOK Manager should appear.

Select Enroll MOK ? Continue ? Yes, enter your temporary password, and reboot.

After Ubuntu starts:

sudo modprobe vmmon
sudo modprobe vmnet

VMware should now be able to start virtual machines.

Important: You may need to sign the modules again after VMware or kernel updates.

After a future Ubuntu kernel update, VMware may rebuild its vmmon and vmnet modules. You might need to sign them again using the same MOK key.

Keep your ~/vmware-mok directory safe for that reason.