【问题描述】


因用户上的数据较多,需要扩容其虚拟磁盘来存放更多的数据。随后在用户关机的情况      下,SSH到Esxi主机上使用vmkfstools    -X    160G   Win7-Chen.vmdk来进行磁盘的扩容,此时vSphere监控台上未显示任何报错,但是单启动Win7-Chen的虚拟机时,会报以下错误:


The parent virtual disk has been modified since the child was created

无法打开磁盘“/vmfs/volumes/4c3e9562-84629be3-8e98-a4badb3f316f/Win7-Chen/Win7-Chen-000002.vmdk”或其所依赖的快照磁盘之一。


【排查解决】


一、注意


1、发现该虚拟机之前是有快照的,在vSphere控制台上发现虚拟机在有快照的情况下,磁盘扩容的选项是灰的,即不允许扩容。需要先移除快好才可以进行扩容。


2、磁盘阵列的可用空间是自动计算出来的,如果置备空间不允许修改的话(没有快照情况下),说明已经到达其可置备空间的上限了。


二、解决


1、SSH登录到Esxi服务器,并将目录切换到Win7-Chen.vmdk的存储目录下


2、


#vi   Win7-Chen-000002.vmdk


Disk DescriptorFile

version=3

encoding=”UTF-8″

CID=1cbf76d9

parentCID=9a8f79ea


isNativeSnapshot=”no”

createType=”vmfsSparse”

parentFileNameHint=”Win7-Chen-000002.vmdk”

# Extent description

RW 314572800 VMFSSPARSE “Win7-Chen-000002-delta.vmdk”


#vi  Win7-Chen.vmdk

# Disk DescriptorFile

version=3

encoding=”UTF-8″

CID=9a8f79ea

parentCID=788a5e7e


isNativeSnapshot=”no”

createType=”vmfsSparse”

parentFileNameHint=”Win7-Chen.vmdk”

# Extent description

RW 335544320 VMFSSPARSE “Win7-Chen-flat.vmdk”


编辑:将Win7-Chen.vmdk的RW 335544320改成RW 314572800,然后确保Win7-Chen.vmdk的CID与Win7-Chen-000002.vmdk的parentCID保持一致。


通过以上操作完后,虚拟机即可正常开机了,不会有任何的错误提示。


3、开机完发现磁盘是未格式化状态,通过格式方式进行VMDK信息的修改均未解决。最后只能通过数据回复工具才能从其磁盘中恢复数据


 


————————惨痛的教训,如果能直接通过修复VMDK的方式来恢复数据的,还忘不吝赐教!!!