VMWare Fusion 2.0.6 不再加载我的虚拟机

VMWare Fusion 2.0.6 不再加载我的虚拟机

问题:

VMware Fusion 无法连接到虚拟机。

确保您有权运行该程序并有权访问它使用的所有目录以及有权访问所有临时文件目录。

我已按照以下两个网站上的说明进行操作,但均不起作用:

使用终端执行以下命令:kextstat | grep vmware

120 0 0x5ca93000 0xd3000 0xd2000 com.vmware.kext.vmx86 (2.0.6) <11 5 4 3 1>
121 0 0x5c3cc000 0xb000 0xa000 com.vmware.kext.vmci (2.0.6) <5 4 3 1>
122 0 0x5c3d7000 0x6000 0x5000 com.vmware.kext.vmioplug (2.0.6) <34 29 5 4 3>
123 0 0x5c413000 0x9000 0x8000 com.vmware.kext.vmnet (2.0.6) <11 5 4 3 1>

我已经使用磁盘工具来检查权限并验证磁盘,并且所有检查都正常。

系统没有任何变化,没有新软件,没有配置更改等。只是今天能用,明天就不能用了。

答案1

我终于弄清楚了问题是什么,它实际上与我在 SO 上的一个问题有些相关,https://stackoverflow.com/questions/1352899/source-install-apache-2-2-13-php-5-3-snow-leopard讽刺的是,我也必须对此负责。

问题源于该软件包图标。显然,使用此包在 Snow Leopard 10.6.1 上编译和安装 PHP 5.3.0 会出现问题。因此,我从系统中删除了与此包相关的所有文件,并在 i386 和 x86_64 架构中从源代码重建了它们。不幸的是,我删除了 VMWare Fusion 所需的一个非常重要的文件:/usr/lib/libiconv.2.dylib

我意识到这个文件是恢复 VMWare Fusion 的关键,我在终端中运行了以下命令:/应用程序/VMware\ Fusion.app/Contents/MacOS/vmware并表示缺少以下资源: /usr/lib/libiconv.2.dylib

因此我进入 TimeMachine 进行搜索并幸运地找到了被删除的文件,并将其恢复,现在我的所有虚拟机都可以再次工作了!

现在的问题是为什么这个文件如此重要?

答案2

您是否检查过实际虚拟机文件夹及其内容的权限?如果您没有虚拟机的写入权限,VMware 可能会出现问题。

磁盘工具的检查权限不会检查虚拟机的权限。

您在一个用户下还是在不同的用户下使用虚拟机?

(我们工作中有一些虚拟机可以由不同的 Mac 用户共享,我们将权限设置为 777。我宁愿使用 ACL - 777 有点极端,但它有效!)

答案3

权限是个好主意...

但是我也在 Parallels 中看到了这种行为...扔掉旧的 VMWARE 融合应用程序,然后从 VMWare 站点的最新磁盘映像重新安装....

重新安装应用程序并不能保证所有内容都会被重写......

答案4

我怀疑一个或多个辅助应用程序(最有可能是 vmware-vmx 应用程序)的 setuid 位已丢失。辅助程序位于 /Library/Application Support/VMware Fusion 中,并且必须设置 setuid 位。

从终端窗口运行以下命令并查看以下权限位:vmware-authd、vmware-rawdiskCreator、vmware-vmx、vmware-vmx-debug:

ls -l /Library/Application Support/VMware\ Fusion

权限位应该是:

-rwsr-xr-x  1 root wheel  <size> <date> <name>

即 setuid root(-rwsr-xr-x 中的 s)。您可以使用:

sudo chmod +s /Library/Application Support/VMware\ Fusion/<name of app that's wrong>

如果用户名不是 root 那么您还应该执行以下操作:

sudo chown root /Library/Application Support/VMware\ Fusion/<name of app that's wrong>

或者,卸载并重新安装该应用程序应该可以达到同样的效果。

相关内容