VMware Workstation 12 vmmon nicht gefunden oder nicht geladen

VMware Workstation 12 vmmon nicht gefunden oder nicht geladen

Unter Ubuntu 12.04 habe ich VMware Workstation 6 erfolgreich verwendet. Dann trat eines schönen Tages beim Starten einer VM dieser Fehler auf:

Could not open /dev/vmmon: No such file or directory.
Please make sure that the kernel module `vmmon' is loaded.
Failed to initialize monitor device.

Ich bin mir über den Grund nicht im Klaren, aber es könnte, reine Spekulation, an der Aktualisierung des Nvidia-Treibers liegen (das war wie ein Besuch beim Zahnarzt, also erzählen Sie mir bitte nicht, dass ich schon wieder am Grafiktreiber herumspielen soll).
Um eine Lösung zu finden, habe ich mithilfe des GUI-Installationsprogramms auf VMware Workstation 12 aktualisiert.

gksudo bash xxxxx.bundle  

Ich nehme an, es war klug genug, die ältere Version zu deinstallieren, bevor ich mit der Installation der neuen Version fortfuhr. Alles ist gut, außer dass das gleiche Problem wie oben auftrat, als ich versuchte, eine virtuelle Maschine zu starten. Tatsächlich konnte ich, wie empfohlen, die Datei oder das Verzeichnis nicht finden/dev/vmmonin meinem System (das gilt auch vor der Neuinstallation der neueren Version).
Ich bin einem anderen klugen Rat gefolgt und habe Folgendes versucht:

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

Die vollständige Ausgabe (damit ich nicht wegen fehlender Details abgewertet werde) lautet wie folgt:

Stopping VMware services:
   VMware Authentication Daemon                                        done
   VM communication interface socket family                            done
   Virtual machine communication interface                             done
   Virtual machine monitor                                             done
   Blocking file system                                                done
Using kernel build system.
make: Entering directory `/tmp/modconfig-ha12A3/vmmon-only'
/usr/bin/make -C /lib/modules/3.13.0-49-generic/build/include/..    SUBDIRS=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.13.0-49-generic'
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/linux/driver.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/linux/driverLog.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/linux/hostif.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/apic.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/comport.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/cpuid.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/hashFunc.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/memtrack.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/phystrack.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/task.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/vmx86.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/vmcore/moduleloop.o
/tmp/modconfig-ha12A3/vmmon-only/linux/driver.c: In function   ‘LinuxDriver_Ioctl’:
/tmp/modconfig-ha12A3/vmmon-only/linux/driver.c:1983: warning: the frame size of 1280 bytes is larger than 1024 bytes
  LD [M]  /tmp/modconfig-ha12A3/vmmon-only/vmmon.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "mcount" [/tmp/modconfig-ha12A3/vmmon-only/vmmon.ko] undefined!
  CC      /tmp/modconfig-ha12A3/vmmon-only/vmmon.mod.o
  LD [M]  /tmp/modconfig-ha12A3/vmmon-only/vmmon.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-49-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-ha12A3/vmmon-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-ha12A3/vmmon-only'
cp -f vmmon.ko ./../vmmon.o
make: Leaving directory `/tmp/modconfig-ha12A3/vmmon-only'
Using kernel build system.
make: Entering directory `/tmp/modconfig-ha12A3/vmnet-only'
/usr/bin/make -C /lib/modules/3.13.0-49-generic/build/include/..     SUBDIRS=$PWD     SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.13.0-49-generic'
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/driver.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/hub.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/userif.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/netif.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/bridge.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/procfs.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/smac_compat.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/smac.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/vnetEvent.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/vnetUserListener.o
  LD [M]  /tmp/modconfig-ha12A3/vmnet-only/vmnet.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "mcount" [/tmp/modconfig-ha12A3/vmnet-only/vmnet.ko] undefined!
  CC      /tmp/modconfig-ha12A3/vmnet-only/vmnet.mod.o
  LD [M]  /tmp/modconfig-ha12A3/vmnet-only/vmnet.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-49-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-ha12A3/vmnet-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-ha12A3/vmnet-only'
cp -f vmnet.ko ./../vmnet.o
make: Leaving directory `/tmp/modconfig-ha12A3/vmnet-only'
Starting VMware services:
   Virtual machine monitor                                            failed
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Blocking file system                                                done
   Virtual ethernet                                                   failed
   VMware Authentication Daemon                                        done
Unable to start services

Ich sehe ein paar Warnmeldungen, aber keine Fehler, daher ist der Fall des fehlenden und nicht entladbarenvmmon.

Befolgen Sie weitere Ratschläge:

>> sudo /etc/init.d/vmware restart
Stopping VMware services:
   VMware Authentication Daemon                                        done
   VM communication interface socket family                            done
   Virtual machine communication interface                             done
   Virtual machine monitor                                             done
   Blocking file system                                                done
Starting VMware services:
   Virtual machine monitor                                            failed
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Blocking file system                                                done
   Virtual ethernet                                                   failed
   VMware Authentication Daemon                                        done

>> sudo modprobe vmmon
FATAL: Error inserting vmmon (/lib/modules/3.13.0-49-generic/misc/vmmon.ko): Unknown symbol in module, or unknown parameter (see dmesg)

Ich suche verzweifelt Deinen weisen Rat.

Antwort1

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

Dieser Befehl hat das Problem für mich behoben

Antwort2

Das Deaktivieren des sicheren Starts von UEFI ist eine schlechte Antwort, aber es ist die offizielle Antwort im VMWare-Forum.

Ich hatte ein ähnliches Problem bei der Installation von VirtualBox und konnte es lösen. VMWareProblem mit derselben Methode. Dadurch kann ich den sicheren Start aktiviert lassen und auch VMWare verwenden.

Das Problem besteht darin, dass das VMware-Kernelmodul nicht signiert ist und daher nicht geladen werden kann, wenn Secure Boot aktiviert ist. Sie können das Modul jedoch „selbst signieren“, was ich sowohl für die VMWare-Workstation als auch für VirtualBox getan habe.

  1. Gehen Sie zu diesem Forumsbeitrag:https://forums.virtualbox.org/viewtopic.php?f=7&t=77363&start=15
  2. Zum Beitrag von Fayce66 am 6. Mai 2016, 08:37
  3. Ersetzen Sie in jedem Befehl das Kernelmodul „vboxdrv“ (Name des Virtualbox-Moduls) durch „vmmon“ (Name des VMware-Moduls).
  4. Möglicherweise müssen Sie alle Befehle für das Kernelmodul „vmnet“ (VMware-Netzwerkmodul) erneut ausführen.

Diese Schritte haben bei mir funktioniert. Ich kann den sicheren Start aktiviert lassen und VMWare Workstation verwenden.

Antwort3

Möglicherweise liegt Ihr Problem mit VMware Workstation 12 darin, dass …

Auf einem Linux-Host mit aktiviertem Sicherheitsmodus dürfen keine unsignierten Treiber geladen werden. Aus diesem Grund können VMware-Treiber wie vmmon und vmnet nicht geladen werden, was das Einschalten der virtuellen Maschine verhindert.

Um dies zu beheben, ohne den sicheren Start zu deaktivieren, können Sie in einem Terminal Folgendes tun, um die Treiber selbst zu signieren:

  1. Generieren Sie mit OpenSSL ein Schlüsselpaar, um VMMon- und VMNet-Module zu signieren:

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

    (Ersetzen Sie MOK durch den Namen der Datei, die Sie als Schlüssel verwenden möchten.)

  2. Signieren Sie die Module mit dem generierten Schlüssel, indem Sie diese Befehle ausführen:

    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)
    
  3. Importieren Sie den öffentlichen Schlüssel in die MOK-Liste des Systems, indem Sie diesen Befehl ausführen:

    sudo mokutil --import MOK.der
    
  4. Bestätigen Sie ein Kennwort für diese MOK-Registrierungsanforderung.

  5. Starten Sie Ihren Computer neu. Folgen Sie den Anweisungen, um die Registrierung über die UEFI-Konsole abzuschließen.

Zitat aus diesem VMWare-Artikel:https://kb.vmware.com/kb/2146460

Antwort4

Ich habe ein automatisiertes Shell-Skript erstellt, das beim Herunterladen, Extrahieren und Erstellen der VMWARE vmnetund vmmonDateien hilft. Das Ausführen dieses Skripts sollte das Problem beheben.

Probieren Sie es hier aus ->vmware-host-modules-builder-cli und erstellen Sie ein Problem, wenn Sie auf Probleme stoßen.

verwandte Informationen