升级到 Artful 后,我无法让任何虚拟机在 VMplayer 中工作,并且当我尝试运行任何旧机器时,我收到此消息:
没有足够的物理内存来启动此虚拟机及其配置设置。本机应用程序和/或服务可能已锁定内存,从而阻止虚拟机启动。关闭不必要的应用程序或服务可能会释放足够的内存来启动此虚拟机。如果您以前能够在这台主机上启动此虚拟机,请尝试重新启动主机。重新启动可能会允许您使用稍多一点的主机内存来运行虚拟机。
注意:内存使用量:2.74G/7.67(我有 8G 内存)。
显示该消息后,VMplayer 崩溃。
我在互联网上做了一些研究,但大多数帖子都是在 Windows 中处理这个问题。
我尝试了以下几种解决方案:
- 搜索 .lck 文件以将其删除,但未找到。
- 搜索 .vmss 文件,找到并全部删除。
- 编辑我的所有 .vmx 文件并转到部分
checkpoint.vmState = ""
,并删除引号之间的文本。 - 最后卸载、清除并重新安装应用程序。要卸载,我找到这个命令:
sudo vmware-installer -u vmware-player
因为sudo apt-get remove VMplayer
没有做任何事情,要重新安装,我下载并运行了最新版本:VMware-Player-14.0.0-6661328.x86_64.bundle
。 - 创建新的虚拟机。
上述解决方案似乎都无法解决问题,我被 VirtualBox 困住了,无法让 USB 再次工作。
答案1
基于这方法,我使用以下命令来解决类似的问题:
cd /tmp
git clone https://github.com/mkubecek/vmware-host-modules.git
cd vmware-host-modules
git checkout workstation-14.0.0
tar cf vmmon.tar vmmon-only
sudo cp vmmon.tar /usr/lib/vmware/modules/source
sudo vmware-modconfig --console --install-all
这样它就可以编译并正确运行。
答案2
好的,操作方法如下:在 Ubuntu 17.10 中安装 VM Workstation Player 14 后,下载此适当的差异补丁并将其保存到 /tmp/hostif-fix.patch
以 root 身份运行以下命令(手动使用 sudo su,或者在使用 sudo sh 运行的 .sh 文件中):
cd /usr/lib/vmware/modules/source
tar xf vmmon.tar
cd vmmon-only/linux
patch hostif.c /tmp/hostif-fix.patch
cd ../..
tar cf vmmon.tar vmmon-only
rm -rf vmmon-only
vmware-modconfig --console --install-all
有效,已在 Ubuntu 17.10 和 Workstation Player 14 上进行了测试。感谢 geneC 创建了有效的补丁,并感谢 Charles Green 识别了原始提交和程序
答案3
显然这是内核 14.0 及以上版本中的一个已知问题 - 有一个补丁可用https://github.com/mkubecek/vmware-host-modules/commit/770c7ffe611520ac96490d235399554c64e87d9f
说明(改编自 Arch Linux)
cd /usr/lib/vmware/modules/source
tar xf vmmon.tar
cd vmmon-only/linux
vim hostif.c # or use the patch command to apply the patch
cd ../..
tar cf vmmon.tar vmmon-only
rm -rf vmmon-only # cleanup
# Lastly, we need to rebuild the patched module
sudo vmware-modconfig --console --install-all
一些参考资料:
答案4
我遇到了完全相同的问题 - 感谢@CharlesGreen 的回答!
由于我正在运行 Workstation Player 14.0.0,因此简单地用引用的补丁替换文件是不行的。
您必须实际替换提取的代码hostif.c
。引用的补丁是为 Workstation Player 12.5 提供的,不适用于 14