背景介绍:由于我的固态硬盘比较小 只有128G 在搭建大数据环境的时候需要四台虚拟机 无奈只能在SSD上创建两台 在移动硬盘上创建两台 由于不小心移动了移动硬盘 导致虚拟机异常停止工作  打开时 报错如下:

无法打开虚拟机 未找到.vmx文件

第一次碰到这个问题的时候我是重新克隆一台虚拟机 但是这样特别麻烦 需要修改很多配置文件 这次我在网上查找了一些资料

解决办法如下:

在VMware中移除掉出现问题的虚拟机(注意只是从VMware中移除 虚拟机在磁盘上的文件必须保留 否则无法恢复)

新建一台虚拟机 步骤如下:

vm虚拟机找不到之前的镜像在哪找_移动硬盘

此处一定要选择自定义

vm虚拟机找不到之前的镜像在哪找_后缀_02

vm虚拟机找不到之前的镜像在哪找_VMware_03

此处一定要选择稍后安装操作系统

vm虚拟机找不到之前的镜像在哪找_VMware_04

vm虚拟机找不到之前的镜像在哪找_移动硬盘_05

之前出问题的虚拟机所在的目录是:F:\Software\Virtual Machine slave3 此处最好是新建一个目录 以免发生冲突

vm虚拟机找不到之前的镜像在哪找_后缀_06

vm虚拟机找不到之前的镜像在哪找_移动硬盘_07

vm虚拟机找不到之前的镜像在哪找_vm虚拟机找不到之前的镜像在哪找_08

vm虚拟机找不到之前的镜像在哪找_vm虚拟机找不到之前的镜像在哪找_09

vm虚拟机找不到之前的镜像在哪找_移动硬盘_10

vm虚拟机找不到之前的镜像在哪找_移动硬盘_11

此处一定要选择使用现有虚拟磁盘

vm虚拟机找不到之前的镜像在哪找_移动硬盘_12

打开之前出问题的虚拟机目录下的.vmdk文件

vm虚拟机找不到之前的镜像在哪找_后缀_13

至此虚拟机创建完成 尝试打开 发现还是会报错:

vm虚拟机找不到之前的镜像在哪找_VMware_14

这是因为虚拟机在运行的时候,会锁定文件,防止被修改,而如果突然系统崩溃了,虚拟机就来不及把已经锁定的文件解锁,所在启动的时候,就会提示无法锁定文件,如上图所示,解决方法如下:删除原来的虚拟机目录下的所有后缀为.lck的文件

vm虚拟机找不到之前的镜像在哪找_vm虚拟机找不到之前的镜像在哪找_15

也可以直接删除掉这个后缀为.lck的文件夹

删除完毕后 再次启动虚拟机就可以成功了

vm虚拟机找不到之前的镜像在哪找_vm虚拟机找不到之前的镜像在哪找_16

测试一下是否运行正常:

vm虚拟机找不到之前的镜像在哪找_移动硬盘_17

一切正常

总结:

1. 尽量不要将虚拟机创建在移动硬盘上 最好买个大点的SSD 

2. 如果虚拟机安装在移动硬盘上 在虚拟机运行的时候 千万不要手残随随便便去动移动硬盘 避免其脱落导致VMWare崩溃 数据丢失