CentOS VMware 播放器

CentOS VMware 播放器

我们有一台 CentOS 6.3 服务器,其中安装了适用于 Linux 64 位的 VMware-Player-5.0.2

当我们尝试使用 VMware 播放器运行其中一个“.vmx”虚拟机文件时,出现以下错误

无法打开 /dev/vmmon:没有该文件或目录。请确保已加载内核模块“vmmon”

可能是什么原因?你们能建议我们如何启动 VMware Player 来打开虚拟机吗?

谢谢!

答案1

嗯,好像 vmmon 内核模块没有加载;-)

因此尝试“modprobe vmmon”(以 root 身份),如果不奏效,可能需要启动这两个命令:

sudo mv /usr/lib/vmware/modules/binary /usr/lib/vmware/modules/binary.old sudo vmware-modconfig --console --install-all --appname="VMware Player" --icon="vmware-player"

(顺便说一下,在 VMware 论坛上发现的)

答案2

如果您的主机启用了安全启动,则不允许加载任何未签名的驱动程序。因此,无法加载 vmmon 和 vmnet 模块。这会阻止虚拟机启动。

为了解决这个问题,您必须使用 openssl 生成一个密钥对来签署 vmmon 和 vmnet 模块:

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

(使用您想要的任何名称代替 VMK。)

通过运行以下命令,使用生成的密钥对模块进行签名:

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

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

导入公钥:

$mokutil --import VMK.der

确认密码并重新启动计算机。按照说明从 UEFI 控制台完成注册。

答案3

vmmon 模块为系统提供 VMware 虚拟机管理程序。但如果已加载另一个虚拟机管理程序,则无法加载该模块。

通常这是 KVM。检查模块kvmkvm_intel或是否kvm_amd已加载。如果已加载,则应停止所有虚拟机,停止 libvirtd 服务,然后卸载模块。

如果您安装了 VirtualBox,也可能是该软件。在这种情况下,请停止其虚拟机和服务,并卸载其模块。

相关内容