很多人在使用虚拟机是都会遇到“无法打开磁盘" x:\*\*vmdk "或者某一个快照所依赖的磁盘原因: 未能锁定文件

问题出现的原因:
虚拟磁盘(.vmdk)本身有一个磁盘保护机制,为了防止多台虚拟机同时访问同一个虚拟磁盘(.vmdk)带来的数据丢失和性能削减方面的隐患,每次启动虚拟机的时候虚拟机会使用扩展名为 .lck(磁盘锁)文件对虚拟磁盘(.vmdk)进行锁定保护。当虚拟机关闭时 .lck(磁盘锁)文件自动删除。但是可能由于您非正常关闭虚拟机,这时虚拟机还没来得 及删除您系统上的 .lck(磁盘锁)文件,所以当下次您启动虚拟机的时候出现了上述错误。(来自互联网)

解决方案:1、删除虚拟机配置文件和虚拟磁盘文件夹的所有以 .lck 结尾的文件以及文件夹(来自互联网)
                 
以下原创

但是很多人发现虚拟机目录下并没有 *.lck 结尾的文件但虚拟机磁盘依然打不开,这是怎么回事呢?

 
          答案其实很简单,这就和你的文件系统的删除文件机制有关系(删除文件时先删除磁盘文件对应的目录树,并将对应扇区标记为未分配,等待下个文件写入时再分配到此扇区,并不是直接填零对应文件区域),虽然在表面上看不见(显示系统文件也如此),但是 *.lck 却可能存在你的主控文件表(MFT)中,由于虚拟机软件可以直接绕过文件系统操作磁盘底层,所以其实对应的文件早已删除,只是由于磁盘文件系统故障,虚拟机软件检测到 MFT 中的对应文件关联还在,所以你只要对你的虚拟磁盘所在的磁盘分区进行磁盘检查(chkdsk ?:/f),过程中你会发现一些提示"CHKDSK发现主控文件表(MFT)位图中有标记为已分配的可用空间,正在更正文件系统错误..."有的磁盘则提示"正在校验索引页...,发现*个未被索引的文件..."这可能就是那个未被正确删除索引 *.lck ,当磁盘检查完成后,你会发现虚拟机磁盘的错误提示没有了 原创

    如果磁盘正被占用可能需要重启系统才能解决
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐