首页 > 其他分享 >为增量磁盘重新创建缺少的虚拟磁盘 (VMDK) 描述符文件

为增量磁盘重新创建缺少的虚拟磁盘 (VMDK) 描述符文件

时间:2025-01-09 21:44:00浏览次数:1  
标签:文件 虚拟机 examplevm vmdk 描述符 VMDK 磁盘

为增量磁盘重新创建缺少的虚拟磁盘 (VMDK) 描述符文件

文章 ID: 327862

calendar_today

更新于: 11-11-2024

产品

VMware vSphere ESXi的

问题/介绍

本文提供了基于 vmfsSparse 磁盘格式重新创建增量虚拟磁盘描述符文件的步骤。这种磁盘格式通常由虚拟机快照功能、实时虚拟机克隆操作和 Storage vMotion 提供。   本文的内容按“原样”提供,在适用法律允许的最大范围内,VMWARE 不对这些内容提供所有其他明示或暗示的陈述和保证,包括其对特定用途的适用性、适销性或非侵权性。对于因使用此内容而引起或与之相关的任何损害,包括直接、间接、后果性损害、业务利润损失或特殊损害,VMWARE 概不负责,即使 VMWARE 已被告知此类损害的可能性。

环境

VMware vSphere ESXi 6.x
VMware vSphere ESXi 7.x
VMware vSphere ESXi 8.x

分辨率

这种类型的磁盘文件由虚拟磁盘描述符文件和成对的增量扩展文件组成。这些数据文件基于 vmfsSparse 格式,用于存储一段时间的增量内容或“更改数据”,也称为快照。

注意


要为增量磁盘重新创建缺失虚拟磁盘 (VMDK) 描述符文件,请执行以下操作:

  1. 确认虚拟机目录是否包含另一个增量磁盘描述符文件或基础磁盘的描述符,以用作基础或模板。例如,您将在虚拟机目录中看到部分或全部文件:

    drwxr-xr-x 1 root root 1400 Aug 16 09:39 。
    drwxr-xr-t 1 根根 2520 8 月 16 日 09:32 ..
    -rw------- 1 根根 32768 8 月 17 日 19:11 examplevm-000002-delta.vmdk-rw
    ------- 1 根根 32768 8 月 17 日 19:11 examplevm-000002.vmdk-rw
    ------- 1 根根 32768 8 月 16 日 14:39 examplevm-000001-delta.vmdk-rw
    ------- 1 根根 32768 8 月 16 日 14:39 examplevm-000001.vmdk-rw
    ------- 1 根根 16106127360 8 月 16 日 09:32 examplevm-flat.vmdk-rw
    ------- 1 根根 469 8 月 16 日 09:32 examplevm.vmdk
    -rw------- 1 根根 18396 8 月 16 日 14:39 examplevm-Snapshot1.vmsn-rw
    ------- 1 根根 18396 8 月 17 日 19:11 examplevm-Snapshot2.vmsn-rw
    ------- 1 根根 397 8 月 16 日 09:39 examplevm.vmsn-rwxr-xr-x
    1 根根 1626 8 月 16 日 09:39 examplevm.vmx-rw
    ------- 1 根根 259 8 月 16 日 09:36 examplevm.vmxf

    注意
    • 以红色突出显示的项目是描述符文件,理想情况下用作模板或基础 (如果存在)。
    • 如果缺少基础磁盘的描述符文件(或 examplevm.vmdk),请参阅重新创建缺少的虚拟机磁盘 (VMDK) 描述符文件 (1002511)。

      如果您有其他 delta 文件具有完整的描述符文件,则可以复制其中一个文件以用作模板。或者,复制基本磁盘描述符文件,或使用下表中最右侧的示例并自定义复制的内容。

      警告:确保在 ESXi/ESX 主机控制台或 SSH 会话之外修改的任何文件的字符编码符合 UTF-8。

    • 对于 ESXi 5.0 及更高版本,虚拟机的增量文件与它们所对应的磁盘位于同一目录中。有关此更改的详细信息,请参阅在 ESXi 5.0 中更改虚拟机的快照增量文件的位置 (2007563例如

      ,虚拟机有两个磁盘,每个磁盘位于不同的数据存储上:

      • 第一个磁盘 (disk.vmdk) 位于 datastore1 上
      • 第二个磁盘 (disk_1.vmdk) 位于 datastore2 上

      拍摄快照后,第一个磁盘 (disk-000001.vmdk) 的增量文件将存储在 datastore1 上,第二个磁盘 (disk_1-000001.vmdk) 的增量文件将存储在 datastore2 上。

  2. 假设增量磁盘 examplevm-000001.vmdk 的描述符文件缺失,并且其关联的增量文件 examplevm-000001-delta.vmdk 没有问题。

    要重新创建增量描述符文件,请复制当前基本磁盘描述符文件 examplevm.vmdk,其中包含缺少的描述符文件的名称 examplevm-000001.vmdk:

    # cp examplevm.vmdk examplevm-000001.vmdk

    我们只需编辑这个新的快照增量描述符文件,即可将其格式从基本磁盘描述符更改为快照增量磁盘描述符。

    修改新的 examplevm-000001.vmdk 增量描述符文件以包含以下信息:

    基本磁盘描述符文件 examplevm.vmdk 重新创建了增量描述符 examplevm-000001.vmdk(最初从 examplevm.vmdk 复制)
    # 磁盘描述符文件
    版本=1
    encoding=“UTF-8”
    CID=1974##
    ##parentCID=ffffffff
    createType=“vmfs”

    # 盘区描述
    RW 31457280 VMFS “examplevm-flat.vmdk”

    # 磁盘数据库
    #DDB

    ddb.virtualHWVersion = “7”
    ddb.longContentID = “5fd########5be
    ########## 90”
    ddb.uuid = “60 ## ## ## ## ## ##”ddb.geometry.cylinders
    = “1958”
    ddb.geometry.heads = “255”
    ddb.geometry.sectors = “63”
    ddb.adapterType = “lsilogic”
    # 磁盘描述符文件
    version=1
    encoding=“UTF-8”
    CID=7f3a1e17
    parentCID=19741890
    createType=“vmfsSparse”
    parentFileNameHint=“examplevm.vmdk”

    # 盘区描述
    RW 31457280 VMFSSPARSE “examplevm-000001-delta.vmdk”

    # 磁盘数据库
    #DDB

    ddb.longContentID = “5fd########5be
    ########## 90”

    注意
    • 如果要从基本磁盘描述创建快照描述符文件,请确保将条目从 VMFS 更改为 VMFSSPARSE。
    • 如果基础磁盘的大小大于 2 TB(仅在 ESXi 5.5 中支持 2 TB+),则需要进行以下更改:

      • createType=“vmfsSparse” 替换为 createType=“seSparse”
      • “区描述”下的 VMFSSPARSE 已替换为 SESPARSE
      • examplevm-000001-delta.vmdk 替换为 examplevm-000001-sesparse.vmdk
    • CID 和 parentCID 值是内容标识符 (CID)。有关 CID 以及如何更正 CID 不匹配错误的更多信息,请参阅解决 CID 不匹配错误:父虚拟磁盘自创建子虚拟磁盘以来已被修改 (1007969)。

      重新创建的文件需要使用其父级中的 CID 值。使用随机值更新 CID 值。在上面的示例中,examplevm.vmdk 是父项。因此,examplevm.vmdk(父级)中的 CID 与 examplevm-000001.vmdk(子级)中的 parentCID 值匹配。

      如果存在其他子增量磁盘,例如 examplevm-000002.vmdk(上例中未显示),请查看子磁盘的 parentCID,并确保它与重新创建的描述符文件的 CID 参数匹配。

    • 增量磁盘采用 vmfsSparse 格式;为 createType 参数指定此项。

      • 将 parentFileNameHint 设置为父虚拟磁盘文件。这包含虚拟机基础磁盘或增量描述符的文件名。

        根据可用信息,确定这可能不是一个立即明确或简单的过程。

        请参阅上次成功启动虚拟机时的相关vmware.log文件,以确定单个磁盘文件的打开顺序:

        vmx|磁盘:打开 scsi0:0 '/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000003.vmdk' 持久 R[]
        vmx|DISKLIB-VMFS:“/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000003-delta.vmdk”:打开成功 (10),大小 = 32768,hd = 65613。类型 8
        vmx|DISKLIB-DSCPTR:已打开 [0]:“examplevm-000003-delta.vmdk” (0xa)
        vmx|DISKLIB-LINK:打开“/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000003.vmdk”(0xa):vmfs稀疏,31457280个扇区/15 GB。
        vmx|DISKLIB-VMFS:“/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000002-delta.vmdk”:打开成功 (14),大小 = 32768,hd = 65614。类型 8
        vmx|DISKLIB-DSCPTR:已打开 [0]:“examplevm-000002-delta.vmdk” (0xe)
        vmx|DISKLIB-LINK:打开了“/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000002.vmdk”(0xe):vmfsSparse,31457280个扇区/15 GB。
        vmx|DISKLIB-VMFS:“/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000001-delta.vmdk”:打开成功 (14) 大小 = 32768,hd = 65615。类型 8
        vmx|DISKLIB-DSCPTR:打开 [0]:“examplevm-000001-delta.vmdk” (0xe)
        vmx|DISKLIB-LINK:打开了“/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000001.vmdk”(0xe):vmfsSparse,31457280个扇区/15 GB。
        vmx|DISKLIB-VMFS:“/vmfs/volumes/########-########-####-##########/examplevm/examplevm-flat.vmdk”:打开成功 (14) 大小 = 16106127360,hd = 65616。类型 3
        vmx|DISKLIB-DSCPTR:已打开 [0]:“examplevm.vmdk” (0xe)
        vmx|DISKLIB-LINK:打开“/vmfs/volumes/########-########-####-##########/examplevm/examplevm.vmdk”(0xe):vmfs,31457280个扇区/15 GB。
        vmx|DISKLIB-CHAINESX:ChainESXOpenSubChain:numLinks = 4,numSubChains = 1
        vmx|DISKLIB-LIB:打开了“/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000003.vmdk”(标记 0xa)。
        vmx|磁盘:打开 '/vmfs/volumes/########-########-####-##########/examplevm/examplevm-000003.vmdk' 地理位置 (1958/255/63) BIOS 地理位置 (0/0/0)

        以蓝色突出显示的部分是虚拟机的虚拟磁盘描述符文件中使用的基本配置参数。虚拟磁盘树的布局可以使用相同的日志文件,根据打开文件的顺序和时间线来确定。在此示例中:

        • 已打开虚拟机的一个磁盘 SCSI 0:0。指定的文件为 examplevm-000003.vmdk。
        • 此磁盘具有父级,并引用了 examplevm-000002.vmdk。这还有一个父项和引用的 examplevm-000001.vmdk。
        • 它本身是一个中间磁盘文件,它引用 examplevm.vmdk 作为其父级。这是虚拟机的基础磁盘。
      • 如果没有可用的日志文件,则在建立增量磁盘排序时,可以考虑目录中文件的创建或修改日期。
      • 查看每个剩余虚拟机增量磁盘的描述符文件还将阐明虚拟机的现有布局。

        警告: 这些文件并不总是按数字顺序排序的。对磁盘文件进行错误排序可能会导致客户机操作系统中出现严重的文件系统损坏,和/或在虚拟机打开电源时触发 CID 不匹配情况。如有疑问,请停止并联系 VMware 技术支持以提交支持请求。有关更多信息,请参阅在 Customer Connect 中提交支持请求 (2006985)。

    • 盘区描述指定包含虚拟机磁盘数据的相应数据文件:

      RW 31457280 VMFS “examplevm-flat.vmdk”

      RW 编号是盘区或磁盘文件的 512 字节扇区数(或“扇区计数”)。基础磁盘的 RW 值用于附加到它的增量磁盘的整个链中;任何子虚拟磁盘文件都不应偏离定义的数量,并且将包含相同的值。

    • 与基本磁盘描述符文件不同,DDB 部分不包含几何信息。仅使用长内容 ID(与 ESX 4.x 虚拟机和更高版本相关):

      ddb.longContentID = “5f ############################# 90”

      此值还与与增量虚拟磁盘关联的父磁盘(和基础磁盘)匹配。不要包括 delta disk 描述符文件的几何信息。



其他信息



重新创建缺少的虚拟机磁盘描述符文件
“自创建子虚拟磁盘以来,父虚拟磁盘已被修改”错误
了解 ESXi/ESX
中的虚拟机快照如何在 Customer Connect
中提交支持请求更改 ESXi 5.x 中虚拟机的快照增量文件的位置

标签:文件,虚拟机,examplevm,vmdk,描述符,VMDK,磁盘
From: https://www.cnblogs.com/TImeroot/p/18662942

相关文章

  • Day9-【软考】磁盘的各种读取时间如何计算...?
    六、存储系统什么是层次化存储结构?寄存器,速度最快,效率最高,容量极小,属于最高层Cache,是高速缓存存储器,从上往下,最上面速度最快,最下面容量最大拿掉Cache,也能运行,因为CPU能够直接和内存进行交换,但是这样速度会变慢十倍或者百倍通常K,M为单位为什么会这样,加了Cache就能提升......
  • 关于VMDK快照原理、备份和恢复(包括手动恢复)教程 转载
    原文地址  VMware系列:全站最完整的关于VMDK快照原理、备份和恢复(包括手动恢复)教程以及【win7-win11多系统VHD和VHDX安装简单攻略】  全站最完整的关于VMDK快照原理、备份和恢复(包括手动恢复)教程一.全站最完整的关于VMDK快照原理、备份和恢复(包括手动恢复)教程1......
  • 如何将新购买的磁盘容量挂载到/home目录?
    当您购买了新的磁盘容量并希望将其挂载到/home目录时,以下是详细的步骤指南,帮助您顺利完成操作:停止相关服务:在开始挂载新磁盘之前,建议先停止所有依赖于/home目录的服务,如Web服务器、数据库等。可以通过命令行工具如systemctlstop<service_name>来停止服务。分区和格式化......
  • 云服务器根目录扩容后磁盘空间未增加
    问题描述:我已经升级了云服务器的配置,但根目录的空间大小并未增加。请帮我检查并解决这个问题。详情回答:您好!感谢您使用我们的云服务器服务。根据您的描述,您已经升级了云服务器的配置,但根目录的空间大小并未增加。这种情况通常是由于磁盘挂载或分区设置不当引起的。下面我们将为......
  • Linux上磁盘扩容
    【后端】Linux上磁盘扩容Centos7硬盘扩容第一步:查看硬盘情况 命令:lsblk 第二步:查看磁盘空间大小,命令:df-h   第三步:增加磁盘空间,使用下图vm虚拟机增加方式。物理机直接按照挂在上去。 第四步:使用fdisk/dev/sda创建新分区 ......
  • CH340C 请求 USB 设备描述符失败
    简短不看版如果出现上述状况,说明线有问题:线的确是数据线(不是电源线),但是不是能与CH340正常通讯的数据线(数据线的数据传输功能有问题。需要更换其它数据线. 前文    该文分享CH340驱动使用过程可能出现的问题,以下出现的问题解决方案都建立在CH340硬件正常的情况下。......
  • OpenEuler23.03中磁盘挂载
    OpenEuler23.03中磁盘挂载一、fdisk磁盘分区(fdisk工具小于2T硬盘可用)参考:https://blog.csdn.net/changzhaohui/article/details/1401031671.查看分区情况1.1查看当前系统分区情况lsblk1.2查看当前磁盘数量情况fdisk-l2.创建磁盘挂载点mkdir-p/mnt/sdc3.创......
  • linux中执行磁盘的操作
    一、U盘链接虚拟机也可通过设置修改二、查看是否识别成功命令ls/dev/sd*如果未识别,可以修改usb接口版本三、给系统分区命令sudofdisk/dev/sdb  接下来按照提示进行即可如果在w保存时报红,可能是自动挂载,可以事先取消挂载sudoumount/dev/sdb1四、分区......
  • openEuler RISC-V上磁盘I/O性能测试的IOZone实例
      IOZone是一个广泛使用的文件系统性能基准测试工具,旨在评估磁盘I/O性能。它能够测试各种类型的文件操作,包括顺序读写、随机读写、重载(re-write)、读取已写入的数据等。通过这些测试,IOZone可以帮助用户了解不同文件系统和存储设备的性能特点,从而为选择合适的硬件和优化系统配......
  • 如何解决数据盘扩容后磁盘空间未合并的问题?
    您好,当数据盘扩容后磁盘空间未合并时,通常是因为操作系统未能自动识别新增加的空间。以下是详细的排查步骤和解决方案:检查磁盘分区表:首先,使用命令行工具(如fdisk-l或lsblk)查看当前磁盘分区表,确认新增加的空间是否已被识别。如果看到未分配的空间,说明下一步需要进行分区扩展操作......