![无法打开 /dev/vmmon:没有此文件或目录](https://linux22.com/image/1062796/%E6%97%A0%E6%B3%95%E6%89%93%E5%BC%80%20%2Fdev%2Fvmmon%EF%BC%9A%E6%B2%A1%E6%9C%89%E6%AD%A4%E6%96%87%E4%BB%B6%E6%88%96%E7%9B%AE%E5%BD%95.png)
我在 vmware Workstation 中打开虚拟机时出现以下错误:
Could not open /dev/vmmon: No such file or directory. Please make sure that the kernel module `vmmon' is loaded.
然后我单击了“确定”,然后报告了另一个如下所示的错误,并且 vmware Workstation 停止为我启动虚拟机:
Failed to initialize monitor device.
这可能和我的系统更新有关。
我发现这帖子,我确实像他们说的那样:
1. openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform
DER -out MOK.der -nodes -days 36500 -subj "/CN=VMware/"
2. openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform
DER -out MOK.der -nodes -days 36500 -subj "/CN=VMware/"
3. sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256
./MOK.priv ./MOK.der $(modinfo -n vmnet)
4. sudo mokutil --import MOK.der
但是当我执行sudo mokutil --import MOK.der,我收到一个错误:
EFI variables are not supported on this system
当我执行sudo modprobe vmmon,我收到一个错误:
modprobe: ERROR: could not insert 'vmmon': Exec format error
当我执行sudo vmware-modconfig --console --install-all
[AppLoader] GLib does not have GSettings support.
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-iwyoC2/vmmon-only'
/usr/bin/make -C /lib/modules/4.4.0-116-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-4.4.0-116-generic'
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/linux/driver.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/linux/driverLog.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/linux/hostif.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/common/apic.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/common/comport.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/common/cpuid.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/common/hashFunc.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/common/memtrack.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/common/phystrack.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/common/task.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/common/vmx86.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/vmcore/moduleloop.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/bootstrap/bootstrap.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/bootstrap/monLoader.o
CC [M] /tmp/modconfig-iwyoC2/vmmon-only/bootstrap/monLoaderVmmon.o
/tmp/modconfig-iwyoC2/vmmon-only/linux/driver.c:985:1: warning: always_inline function might not be inlinable [-Wattributes]
LinuxDriverSyncReadTSCs(uint64 *delta) // OUT: TSC max - TSC min
^
LD [M] /tmp/modconfig-iwyoC2/vmmon-only/vmmon.o
Building modules, stage 2.
MODPOST 1 modules
CC /tmp/modconfig-iwyoC2/vmmon-only/vmmon.mod.o
LD [M] /tmp/modconfig-iwyoC2/vmmon-only/vmmon.ko
make[1]: Leaving directory `/usr/src/linux-headers-4.4.0-116-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-iwyoC2/vmmon-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-iwyoC2/vmmon-only'
cp -f vmmon.ko ./../vmmon.o
make: Leaving directory `/tmp/modconfig-iwyoC2/vmmon-only'
Using kernel build system.
make: Entering directory `/tmp/modconfig-iwyoC2/vmnet-only'
/usr/bin/make -C /lib/modules/4.4.0-116-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-4.4.0-116-generic'
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/driver.o
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/hub.o
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/userif.o
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/netif.o
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/bridge.o
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/procfs.o
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/smac_compat.o
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/smac.o
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/vnetEvent.o
In file included from include/linux/pci.h:35:0,
from /tmp/modconfig-iwyoC2/vmnet-only/compat_netdevice.h:27,
from /tmp/modconfig-iwyoC2/vmnet-only/netif.c:43:
include/linux/pci_ids.h:2253:0: warning: "PCI_VENDOR_ID_VMWARE" redefined [enabled by default]
#define PCI_VENDOR_ID_VMWARE 0x15ad
^
In file included from /tmp/modconfig-iwyoC2/vmnet-only/net.h:38:0,
from /tmp/modconfig-iwyoC2/vmnet-only/vnetInt.h:26,
from /tmp/modconfig-iwyoC2/vmnet-only/netif.c:42:
/tmp/modconfig-iwyoC2/vmnet-only/vm_device_version.h:56:0: note: this is the location of the previous definition
#define PCI_VENDOR_ID_VMWARE 0x15AD
^
CC [M] /tmp/modconfig-iwyoC2/vmnet-only/vnetUserListener.o
In file included from /tmp/modconfig-iwyoC2/vmnet-only/net.h:38:0,
from /tmp/modconfig-iwyoC2/vmnet-only/vnetInt.h:26,
from /tmp/modconfig-iwyoC2/vmnet-only/bridge.c:53:
/tmp/modconfig-iwyoC2/vmnet-only/vm_device_version.h:56:0: warning: "PCI_VENDOR_ID_VMWARE" redefined [enabled by default]
#define PCI_VENDOR_ID_VMWARE 0x15AD
^
In file included from include/linux/pci.h:35:0,
from /tmp/modconfig-iwyoC2/vmnet-only/compat_netdevice.h:27,
from /tmp/modconfig-iwyoC2/vmnet-only/bridge.c:52:
include/linux/pci_ids.h:2253:0: note: this is the location of the previous definition
#define PCI_VENDOR_ID_VMWARE 0x15ad
^
LD [M] /tmp/modconfig-iwyoC2/vmnet-only/vmnet.o
Building modules, stage 2.
MODPOST 1 modules
CC /tmp/modconfig-iwyoC2/vmnet-only/vmnet.mod.o
LD [M] /tmp/modconfig-iwyoC2/vmnet-only/vmnet.ko
make[1]: Leaving directory `/usr/src/linux-headers-4.4.0-116-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-iwyoC2/vmnet-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-iwyoC2/vmnet-only'
cp -f vmnet.ko ./../vmnet.o
make: Leaving directory `/tmp/modconfig-iwyoC2/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
这是什么意思?怎么解决?我试了很多方法都无效,请帮忙。
顺便说一句:我的电脑安全启动已被禁用
答案1
我遇到了完全相同的问题。唯一对我有帮助的就是回到以前的内核版本。按照此处的说明进行操作:http://karlcode.owtelse.com/blog/2017/03/13/reverting-to-a-previous-kernel/