由于公司停电,导致几十台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 虚机文件不能启动的事故处理的更多相关文章

  1. VMWare 虚机迁移后Linux系统网卡启动问题

    重新安装VMWare或拷贝虚机文件后有时网卡会无法工作,主要是因为网卡的Mac地址改变了,如果系统中的网卡配置信息中有Mac的信息,则虚机的系统的网卡可能无法正常工作. 如果出现上述问题,解决办法如下 ...

  2. 云与备份之(1):VMware虚机备份和恢复

    本系列文章会介绍云与备份之间的关系,包括: (1)VMware 虚机备份和恢复 (2)KVM 虚机备份和恢复 (3)云与备份 (4)OpenStack 与备份 (5)公有云与备份 1. 与备份有关的V ...

  3. 将物理机转换成vmware虚机

    随着虚拟化的快速发展,公司主要是以公有云+私有云结合的混合云部署,据我不成熟的了解,目前很少有公司会将一台单独的物理机作为服务器,在公司内部大家逐渐接受了私有云的部署方案,这样做不但可以节省硬件资源, ...

  4. 本地访问Vmware虚机Web网站

    情况:公司是域环境,Vmware网络设置的是NAT连接模式,里外装的都是Windows,虚机网络IP地址是自动获取的. 查看: 1.虚机Ping本地的IP地址可以Ping通: 2.本地Ping虚机的I ...

  5. vmware 虚机NAT模式,局域网可访问

    本地VMware虚拟机,网络模式为NAT,现在需要局域网其他电脑通过ssh连接这台VMware虚拟机 宿主机地址:192.168.3.26 VMware虚拟机地址:192.168.239.137 局域 ...

  6. vmware虚机 修改bios方法

    .vmx文件添加以下行,会在下次启动时自动出现bios,并会将"TRUE"改为“false” bios.forceSetupOnce = "TRUE"

  7. 获取hyper-v和vmware虚机状态

    在vmware的PowerCLI和微软的scvmm的PowerShell中可以通过Get-VM命令来获取虚拟机的信息.下面我们用代码的方式去实现,代码相关类方法就是对命令的封装. vmware api ...

  8. win10的VMware虚机host-only模式下,虚拟机无法ping通物理机,而物理机能ping通虚机

    1.打开控制面板—->Windows防火墙(win10操作系统) 2.点击最上面的”允许应用或功能通过xxxxx” 3.勾上上图的“文件和打印机共享” 然后点确定.

  9. Virtualbox虚机无法启动因断电

      The virtual machine 'nn1' has terminated unexpectedly during startup with exit code 1 (0x1). More ...

随机推荐

  1. Linux使用mailx发送邮件--技术流ken

    前言   最近想要监控系统服务运行情况并实现自动发送邮件报警,zabbix虽然也可以实现这样的功能,但是这里使用一个非常简单的办法就可以实现.需要安装mailx工具,mailx是一个小型的邮件发送程序 ...

  2. 学会这个删库再也不用跑路了~ --技术流ken

    前言 相信每一个学IT的人或多或少都听说过从删库到跑路这个梗~下图也是在各种交流群屡禁不止,新人听着也是瑟瑟发抖. 人们茶余饭后,街头巷角难免要问... 下面技术流ken就教给各位新手们一招删库再也不 ...

  3. Python图像处理之验证码识别

      在上一篇博客Python图像处理之图片文字识别(OCR)中我们介绍了在Python中如何利用Tesseract软件来识别图片中的英文与中文,本文将具体介绍如何在Python中利用Tesseract ...

  4. [转]BTC RPC API GetTransaction

    本文转自: GetTransaction GetTransaction gettransaction调用获取指定钱包内交易的详细信息.该调用需要节点 启用钱包功能. 参数 TXID:要查看详情的交易I ...

  5. 第一册:lesson thirty nine.

    原文: Don't drop it! A:What are you going to do with that vase,Penny? B:I am going to put it on the ta ...

  6. sql server 查询时会锁表吗?

    sql server在执行查询语句时会锁表.在锁表期间禁止增删改操作. 如果不想锁表,那就再表名或别名后面加上WITH(NOLOCK) 如下所示:

  7. SQL 查看SQL语句的执行时间 直接有效的方法

    在MSSQL Server中通过查看SQL语句执行所用的时间,来衡量SQL语句的性能. 通过设置STATISTICS我们可以查看执行SQL时的系统情况.选项有PROFILE,IO ,TIME.介绍如下 ...

  8. C# 只开启一个程序,如果第二次打开则自动将第一个程序显示到桌面

    using System; using System.Collections.Generic; using System.Windows.Forms; using System.Runtime.Int ...

  9. 利用OpenCV给图像添加中文标注

    利用OpenCV给图像添加中文标注 : 参考:http://blog.sina.com.cn/s/blog_6bbd2dd101012dbh.html  和https://blog.csdn.net/ ...

  10. laravel5.1 ajax post传值_token

    laravel框架中只要是涉及到post传值都需要传 _token ,这是框架中为了防止crsf攻击所做的安全措施,那么我们用到ajax中的post 方式传值时,也需要在所传数据中添加一个_token ...