首先,警告各位,不要随意强制关机,vmware又是一个有着复杂机制的软件。很容易出现各种状况。

  虚拟机完全就像真正的计算机那样进行工作,例如你可以安装操作系统、安装应用程序、访问网络资源等等。对于你而言,它只是运行在你物理计算机上的一个应用程序,但是对于在虚拟机中运行的应用程序而言,它就是一台真正计算机。因此,当你在虚拟机中进行软件评测时,可能系统一样会崩溃;但是,崩溃的只是虚拟机上的操作系统,而不是物理计算机上的操作系统,并且,使用虚拟机的“Undo”(恢复)功能,你可以马上恢复虚拟机到安装软件之前的状态。有朋友在运行虚拟机时候出现死机的现象,强制关闭之后,原来的没有正常关闭的虚拟系统不能正常启动,什么原因能造成虚拟机崩溃呢?针对这种现象。下面我们就来学习下如何解决虚拟机不能启动的问题。

  解决办法:

  到相应的虚拟机目录下删除%虚拟机名字%.vmx.lck文件夹或者其中的文件即可

  我们打开任务管理器,会发现vmware.exe和vmware-vmx.exe两个重要的进程。其中vmware-vmx.exe是主程序,虚拟机在这个进程下运行;VMware.exe是外壳程序,负责显示vmware-vmx.exe中运行的虚拟系统并解释传送各种命令和操作,是我们最常用的 VMware用户界面,该程序可重入即同时打开多个。

  因为VMware Workstation是可重入的,为了避免同一个虚拟系统同时被多个VMware.exe打开操作,造成错误,所以每个VMware打开相应的虚拟机选项卡时都会先检查该虚拟机根目录下是否有*.vmx.lck的文件夹并验证其中的文件,如果该文件中包含合法生成的uuid(通用唯一识别码),那么将无法打开该虚拟机的选项卡,并出现下面的错误提示:  




   Take Ownership之后会出现以下提示:  




   如果没有相应的合法文件,就会在该虚拟机根目录下生成*.vmx.lck文件夹,并在该文件夹下生成一个包含uuid的*.lck文件,打开虚拟机选项卡,并从主程序接收显示信息。

  这个*.lck文件可以用记事本编辑。里面是uuid={一串字母数字},uuid是通用唯一识别码 (Universally Unique Identifier),它的特点就是唯一性。为的是同时只有一个vmware.exe能接受主程序的显示,并对虚拟机操作。lck是lock的缩写,即对请求资源的锁定。

  VMware 虚拟机在运行时会在相应的虚拟机目录下生成三个文件*.vmx.lck,*.vmdk.lck,*.vmem.lck文件夹,里面包含以*.lck命名的文件。 其中的*.vmx.lck是伴随vmware.exe中选项卡的打开时生成的;另外两个是关于虚拟磁盘和内存的使用的,它们伴随着虚拟系统的运行而产生。如果关闭VMware.exe让虚拟机在后台运行,*.vmx.lck文件夹会消失另外两个则不会。

  在VMware.exe中打开某个虚拟机选项卡时,会短暂生成*.vmsd.lck的文件夹,估计这个是在最初传送数据(send data)时生成的,防止多个外壳程序同时请求打开虚拟机。

      

*.vmdk.lck,*.vmem.lck文件夹时可能因为报错,“文件或目录损坏”。

        不要泄气,可能由于你的磁盘驱动损坏,关闭vmware,重启你的物理机,注意是物理的真实的主机。

        重启时不要跳过磁盘的检查修复。

        再尝试打开*.vmx,是不是好了?

        还得说两句,如果你曾自作聪明,用记事本编辑了*.vmx文件,从vmware是打不开*.vmx的,需要右键点*.vmx用虚拟机打开。