VMware Workstation 12 vmmon introuvable ou non chargé


10

Sur Ubuntu 12.04, j'ai utilisé avec plaisir VMware Workstation 6. Puis, un beau jour, cette erreur s'est produite lors du démarrage d'une machine virtuelle:

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.

Je ne suis pas sûr de la raison, mais cela pourrait être purement spéculatif, en raison de la mise à niveau du pilote Nvidia (cela s'apparentait à une visite chez le dentiste, alors ne me dites pas de jouer avec le pilote graphique. )
À la recherche d'une résolution, j'ai mis à jour VMware Workstation 12 à l'aide du programme d'installation GUI.

gksudo bash xxxxx.bundle  

Je suppose qu'il était assez intelligent pour désinstaller l'ancienne version avant de procéder à l'installation de la nouvelle version. Tout va bien, sauf que le même problème ci-dessus s'est produit lorsque j'ai essayé de démarrer une machine virtuelle. En effet, comme conseillé, je n'ai pas pu trouver le fichier ou le répertoire / dev / vmmon dans mon système (cela est également vrai avant de réinstaller vers la version plus récente.)
Suite à un autre conseil judicieux, j'ai essayé:

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

La sortie complète (de peur d'être rétrogradé par manque de détails) est telle:

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

Je vois quelques messages d'avertissement mais aucune erreur, ce qui déconcerte en effet le cas du vmmon manquant et déchargeable .

Suite à d'autres conseils:

>> 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)

Tes sages conseils que je cherche désespérément.


J'ai essayé de copier le fichier vmmon à partir d'un autre poste de travail qui fonctionnait bien avec VMware mais n'a pas pu. C'est un fichier «spécial» de 0 octet. Quel est ce vmmon-ster ignoble ???
ng0323

J'ai essayé de désinstaller manuellement à partir de la ligne de commande, puis j'ai réinstallé la dernière version (téléchargée aujourd'hui) et répété les conseils ci-dessus, mais hélas, mes efforts ont été vains!
ng0323

1
Veuillez essayersudo vmware-modconfig --console --install-all
Charles Green

1
Existe-t-il un moyen de résoudre ce problème avec le démarrage ufi activé?
rafaelphp

La solution @CharlesGreen a fonctionné pour moi
TungstenX

Réponses:


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

Cette commande l'a corrigé pour moi


8

La désactivation du démarrage sécurisé de l'UEFI est une mauvaise réponse, mais c'est la réponse officielle sur le forum VMWare.

J'ai eu un problème similaire lors de l'installation de VirtualBox et j'ai réussi à résoudre mon problème VMWare en utilisant la même méthode. Cela me permet de garder le démarrage sécurisé activé et d'utiliser également VMWare.

Le problème est que le module du noyau vmware n'est pas signé et ne peut donc pas être chargé lorsque le démarrage sécurisé est activé. Cependant, vous pouvez "auto-signer" le module, ce que j'ai fait pour la station de travail VMWare et VirtualBox.

  1. Accédez à ce message sur le forum: https://forums.virtualbox.org/viewtopic.php?f=7&t=77363&start=15
  2. Aller sur le message de Fayce66 le 6 mai 2016, 08:37
  3. Dans chaque commande, remplacez le module du noyau "vboxdrv" (nom du module virtualbox) par "vmmon" (nom du module vmware)
  4. Vous devrez peut-être refaire toutes les commandes pour le module du noyau "vmnet" (module réseau vmware)

Ces étapes ont fonctionné pour moi. Je peux garder le démarrage sécurisé activé et utiliser VMWare Workstation.


va mettre le contenu en tant que lien pastebin ici au cas où le lien d'origine se casserait (car il serait probablement trop long pour bloquer la citation dans la réponse): pastebin.com/LyLdy3Wb
DeveloperACE

apparemment, la personne dans ce commentaire a cité un lien vers gorka.eguileor.com/vbox-vmware-in-secureboot-linux (version mise à jour gorka.eguileor.com/vbox-vmware-in-secureboot-linux-2016-update ) comme sa source pour le correctif, peut être utile à quelqu'un
DeveloperACE

Il peut également être utile de noter que mokmanager.efi peut être appelé mmx64.efi selon rodsbooks.com/efi-bootloaders/secureboot.html
DeveloperACE

6

Il est possible que votre problème avec VMware Workstation 12 soit que ...

Sur l'hôte Linux avec le mode sécurisé activé, il n'est pas autorisé de charger les pilotes non signés. Pour cette raison, les pilotes VMware, tels que vmmon et vmnet, ne peuvent pas être chargés, ce qui empêche la machine virtuelle de s'allumer.

Pour résoudre ce problème sans désactiver le démarrage sécurisé, vous pouvez effectuer les opérations suivantes dans un terminal pour signer automatiquement les pilotes:

  1. Générez une paire de clés à l'aide de l'openssl pour signer les modules vmmon et vmnet:

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

    (Remplacez MOK par le nom du fichier que vous souhaitez pour la clé.)

  2. Signez les modules à l'aide de la clé générée en exécutant ces commandes:

    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. Importez la clé publique dans la liste MOK du système en exécutant cette commande:

    sudo mokutil --import MOK.der
    
  4. Confirmez un mot de passe pour cette demande d'inscription MOK.

  5. Redémarrez votre machine. Suivez les instructions pour terminer l'inscription à partir de la console UEFI.

Cité à partir de cet article VMWare: https://kb.vmware.com/kb/2146460


Cela a résolu mon problème, merci! Assurez-vous simplement d'avoir sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmmon)et sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $ (modinfo -n vmnet)selon la page liée et d'ajouter sudoà l' mokutil --import MOK.derappel ci-dessus, avec l'option à utiliser sudo passwd rootsuivie par sudo mokutil --import MOK.der --root-pwsi comme ci-dessus ne fonctionne pas.
Campbeln

1

Désactivez simplement le démarrage sécurisé à partir des options UEFI.

https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2103112


La désactivation du démarrage sécurisé n'est pas une mauvaise réponse. En fait, c'est le seul qui a fonctionné pour mes deux machines (ordinateur de bureau et ordinateur portable) exécutant Ubuntu 18.04 LTS et VMPlayer 14.x. Le problème se produit au moment de l'ouverture d'un fichier image. Plutôt que de passer beaucoup de temps dans divers travaux - je recommanderais mieux de désactiver le démarrage sécurisé pour le moment et de l'activer plus tard lorsque l'image a été chargée et utilisée.
Ashu
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.