¿Qué es VMware?

VMware proporciona procesamiento en la nube y virtualización de software y servicios, sus productos más importantes son:

  • VMware Workstation Player, es un paquetes de virtualización de software y puede ejecutar dispositivos virtuales existentes y crear sus propias máquinas virtuales (que requieren instalar un sistema operativo para ser funcionales). VMware Player está disponible para uso personal no comercial.

  • VMware Workstation Pro, habilita a los usuarios para configurar máquinas virtuales (VMs) sobre una única máquina física y usarla simultáneamente con la máquina actual. Cada maquina virtual puede ejecutar su propio sistema operativo, incluyendo versiones de Microsoft Windows, Linux, BSD y MS-DOS.

Debería tener una licencia válida para trabajar con VMware Workstation Pro.

Cómo Resolver Cuestiones para WORKSTATION y PLAYER (CUALQUIER KERNEL + CUALQUIER VERSIÓN)

Instalación

Player

$ sudo ./VMware-Player-x.y.z-nn.x86_64.bundle
$ sudo chmod +x ./VMware-Player-x.y.z-nn.x86_64.bundle
$ sudo ./VMware-Workstation-Full-x.y.z-nn.x86_64.bundle

Workstation

$ sudo ./VMware-Workstation-Full-x.y.z-nn.x86_64.bundle
$ sudo chmod +x ./VMware-Workstation-Full-x.y.z-nn.x86_64.bundle
$ sudo ./VMware-Workstation-Full-x.y.z-nn.x86_64.bundle

Resolving Conflict with Kernel

The problem here is always the same vmnet and vmmon doesn’t start well or doesn’t start at all, You should find a PATCH deal with changes in vmmon.c and vmnet.c because something breaks or add some parameters to these files, you can found the following:

  • know what is your kernel version?: uname -r.

  • know your Vmware version or install the latest. /usr/bin/vmware -v

  • Try to find the PATCH for a specific KERNEL version and Vmware.

  • You have to deal with sources ( vmnet and vmmon ) and apply fixed in both of them.

  • Try to find the fix for the specific product Vmware and Kernel version.

This guide try to help with all this boring stuff.

Prerequisite

$ sudo dnf install kernel-devel kernel-headers gcc gcc-c++ make git

Instalación

This repository tracks patches needed to build VMware (Player and Workstation) host modules against recent kernels.

For Example, I would like to Patch Workstation:

wget https://github.com/mkubecek/vmware-host-modules/archive/workstation-x.y.z.tar.gz
tar -xzf workstation-x.y.z.tar.gz
cd vmware-host-modules-workstation-x.y.z
make
sudo make install
Based on your VMware product, replace “x.y.z” with your installed version and/or “workstation” with “player”.

Deal with Kernel Updates

You can create a script to take of this after a kernel update. Save it as /etc/kernel/install.d/99-vmmodules.install:

#!/usr/bin/bash

export LANG=C

COMMAND="$1"
KERNEL_VERSION="$2"
BOOT_DIR_ABS="$3"
KERNEL_IMAGE="$4"

ret=0

case "$COMMAND" in
    add)
       VMWARE_VERSION=$(cat /etc/vmware/config | grep player.product.version | sed '/.*\"\(.*\)\".*/ s//\1/g')

       [ -z VMWARE_VERSION ] && exit 0

       mkdir -p /tmp/git; cd /tmp/git
       git clone -b workstation-${VMWARE_VERSION} https://github.com/mkubecek/vmware-host-modules.git
       cd vmware-host-modules
       make VM_UNAME=${KERNEL_VERSION}
       make install VM_UNAME=${KERNEL_VERSION}

       ((ret+=$?))
       ;;
    remove)
        exit 0
        ;;
    *)
        usage
        ret=1;;
esac

exit $ret

Additional Resources