vmWare 虚机文件不能启动的事故处理
由于公司停电,导致几十台vmWare虚拟机器启动报错。
错误:Failed to power on virtual machine XXX. Failed to lock the file Click here for more details.
有些场景也会出现下面的错误:Failed to power on virtual machine XXX. File system specific implementation of LookupAndOpen[file] failed Click here for more details.
原因分析:
这次出错的虚拟机器都是在 vmware ESXi 6.5 版本上的, 同样的的5.5版本上的虚拟机没有出现问题。
这次出错的虚拟机都是设置的自动启动的,就是如果来电会自动启动。
这次断电来电也是不稳定,其中来了几次点但是不久就又断电了。估计出错和启动过程中又断电有关。
问题解决:
这次问题的解决不完美,只是减少了损失,期间寻找了很多方案。网上找到的资料和方案如下:
https://kb.vmware.com/s/article/1007969?lang=zh_CN
https://communities.vmware.com/thread/589155
https://www.nico-maas.de/?p=1923
上述方案对我们的问题都没有效果,最终自己摸索出了一套方案。
1.将虚拟机从系统中 Unregister, 关闭虚拟机,在虚拟机上右键 Unregister

2.通过 SSH 登入 宿主机,修改测试机器的目录名为一个新名称。
mv OLDFODER NEWFODER
如果知道测试机器的目录,可以在 Unregister 之前查看磁盘的 DiskFile 位置确定,如下:
Edit settings -->Hard Disk

3. 在 SSH 中通过 grep -i filename *.vmx 查看系统当前使用的是那个磁盘。

4. 删除 NEWFODER 下的 vmx 后缀文件。
vmx文件为虚拟机的配置文件,储存着根据虚拟机向导或虚拟机编辑器对虚拟机进行的所有配置。

5.重新创建虚拟机,重新创建的时候,名称不要和以前的一样,新起一个名称,但是虚拟机器的Compatibility,Guest OS family,Guest OS version 要和之前的虚拟机一样。
要删除自动产生的磁盘,选择 Existing hard disk. 选择 NEWFODER 下的磁盘。
如果之前的虚机有做过SnapShot ,则NEWFODER 下会有多个磁盘可以选择。这时就是赌运气的时候,可以尝试选择步骤3中的找到的磁盘,如果运气好的话,可以正常启动,这样就解决了虚机不能启动的问题。
如果运气不好,不能启动,这时就可以选择其它的盘,来丢掉最后的一个snapshort 盘。
我在实践的过程中发现,如果只有一个vmdk文件,就是没有做过snapshot,都可以正常回复,如果多个vmdk文件,就是做过snapshot ,则没有找到那些场景下可以成功,那些场景不成功。


在出现这个问题的时候,网上找到的资料也比较少,希望这篇文章可以对碰到问题的人提供些帮助。
vmWare 虚机文件不能启动的事故处理的更多相关文章
- VMWare 虚机迁移后Linux系统网卡启动问题
重新安装VMWare或拷贝虚机文件后有时网卡会无法工作,主要是因为网卡的Mac地址改变了,如果系统中的网卡配置信息中有Mac的信息,则虚机的系统的网卡可能无法正常工作. 如果出现上述问题,解决办法如下 ...
- 云与备份之(1):VMware虚机备份和恢复
本系列文章会介绍云与备份之间的关系,包括: (1)VMware 虚机备份和恢复 (2)KVM 虚机备份和恢复 (3)云与备份 (4)OpenStack 与备份 (5)公有云与备份 1. 与备份有关的V ...
- 将物理机转换成vmware虚机
随着虚拟化的快速发展,公司主要是以公有云+私有云结合的混合云部署,据我不成熟的了解,目前很少有公司会将一台单独的物理机作为服务器,在公司内部大家逐渐接受了私有云的部署方案,这样做不但可以节省硬件资源, ...
- 本地访问Vmware虚机Web网站
情况:公司是域环境,Vmware网络设置的是NAT连接模式,里外装的都是Windows,虚机网络IP地址是自动获取的. 查看: 1.虚机Ping本地的IP地址可以Ping通: 2.本地Ping虚机的I ...
- vmware 虚机NAT模式,局域网可访问
本地VMware虚拟机,网络模式为NAT,现在需要局域网其他电脑通过ssh连接这台VMware虚拟机 宿主机地址:192.168.3.26 VMware虚拟机地址:192.168.239.137 局域 ...
- vmware虚机 修改bios方法
.vmx文件添加以下行,会在下次启动时自动出现bios,并会将"TRUE"改为“false” bios.forceSetupOnce = "TRUE"
- 获取hyper-v和vmware虚机状态
在vmware的PowerCLI和微软的scvmm的PowerShell中可以通过Get-VM命令来获取虚拟机的信息.下面我们用代码的方式去实现,代码相关类方法就是对命令的封装. vmware api ...
- win10的VMware虚机host-only模式下,虚拟机无法ping通物理机,而物理机能ping通虚机
1.打开控制面板—->Windows防火墙(win10操作系统) 2.点击最上面的”允许应用或功能通过xxxxx” 3.勾上上图的“文件和打印机共享” 然后点确定.
- Virtualbox虚机无法启动因断电
The virtual machine 'nn1' has terminated unexpectedly during startup with exit code 1 (0x1). More ...
随机推荐
- spring-boot (四) springboot+mybatis多数据源最简解决方案
学习文章来自:http://www.ityouknow.com/spring-boot.html 配置文件 pom包就不贴了比较简单该依赖的就依赖,主要是数据库这边的配置: mybatis.confi ...
- shell编程基础(五): 正则表达式及其使用
正则表达式 1.前情提要 以前我们用grep在一个文件中找出包含某些字符串的行,比如在头文件中找出一个宏定义.其实grep还可以找出符合某个模式(Pattern)的一类字符串.例如找出所有符合xxxx ...
- Javascript 定时器调用传递参数的方法
文章来源: https://m.jb51.net/article/20880.htm 备注:先记下,以后整理: Javascript 定时器调用传递参数的方法,需要的朋友可以参考下. 无论是wind ...
- .net core2.0+nginx+Ubuntu14.04【一个小白的初次尝试】
新的业务来了,需要使用linux环境部署web服务,作为一个C#的懒惰程序员,就这么上了车[狗脸],废话不多说,跟我一样的小白请看,大神请绕路. 站点暂时没有使用Docker部署,为什么呢,因为我还没 ...
- python面向对象学习(六)类属性、类方法、静态方法
目录 1. 类的结构 1.1 术语 -- 实例 1.2 类是一个特殊的对象 2. 类属性和实例属性 2.1 概念和使用 2.2 属性的获取机制 3. 类方法和静态方法 3.1 类方法 3.2 静态方法 ...
- C#设计模式之十八状态模式(State Pattern)【行为型】
一.引言 今天我们开始讲“行为型”设计模式的第六个模式,该模式是[状态模式],英文名称是:State Pattern.无论是现实世界,还是面向对象的OO世界,里面都有一个东西,那就是对象.有对象当然就 ...
- Spring Cloud Feign 使用方法与性能优化
1. feign自定义Configuration和root 容器有效隔离. 用@Configuration注解 不能在主@ComponentScan (or @SpringBootApplicatio ...
- vue(三)-父子组件通信
原因 : Vue 的组件作用域都是孤立的,不允许在子组件的模板内直接引用父组件的数据.必须使用特定的方法才能实现组件之间的数据传递. props 父组件给子组件传递数据 props:作用是父组件给 ...
- 带你了解源码中的 ThreadLocal
本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 这次想来讲讲 ThreadLocal 这个很神奇的东西,最开始接触到这个是看了主席的<开发艺术探索>,后来是在研究 Vi ...
- C# 程序运行进度显示Lable
public void test() { Thread.Sleep(); string vvv = ""; ; i < ;i++ ) { vvv = vvv +i.ToStr ...