VMware Workstation虚拟机vmx配置文件丢失问题
简介
为了方便快捷,我一般是把虚拟机放在SSD的移动硬盘上,但最近接口不是很稳定,虚拟机运行时有一定几率移动硬盘断线,导致虚拟机挂掉,运气不好的话虚拟机就起不来了.
所以首先还是要勤做snapshot.
环境
VMware Workstation 15
vmx文件丢失
vmx是配置文件,丢失后虚拟机无法启动,有些异常情况下,vmx文件直接被清空,导致虚拟机启动不了。
这种情况下可以尝试从vmware.log
文件恢复
方法1. 手动恢复
从vmware.log
搜索DICT --- CONFIGURATION
找到如下内容,直到以另一段DICT ---
结束
1 | 2020-05-28T01:48:14.628+08:00| vmx| I125: DICT --- CONFIGURATION E:\k8s\k8sn2\k8sn1.vmx |
将中间的内容拷到vmx文件,手动去除每个参数前的时间戳等冗余内容,参数太多,会有点麻烦。
完成后启动虚拟机,大部分情况下能启动,问题解决。
方法2. 通过脚本自动生成
这个方法需要用到Linux
首先拷贝wmware.log
到某个目录下去
生成脚本文件vmxrebuild.sh
并赋予可执行权限1
touch vmxrebuild.sh && chmod +x vmxrebuild.sh
文件中写入以下这行内容即可
1 | sed -n '/DICT --- CONFIGURATION/,/DICT ---/ s/^.*DICT \+\(.\+\) = \(.\+\)$/\1 = \2/p' vmware.log >> new.vmx |
执行vmxrebuild.sh
,完成
报错“指定文件不是虚拟磁盘”
运气不佳,恢复vmx之后启动依然报错,如下
在这个情况下
将scsi0.present = "TRUE"
改为FALSE
再通过snapshot恢复,希望你之前记得做快照,问题解决
附件
- 从 vmware.log 重新构建虚拟机的 .vmx 文件 (1023880)
https://kb.vmware.com/articleview?docid=1023880&lang=zh_CN
History
v1.0,2020.05.31,初始版本
本文作者 : Shen Peng
原文链接 : http://yoursite.com/2020/05/31/VMware-Workstation虚拟机vmx配置文件丢失问题/
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!
知识 & 情怀 | 二者兼得