首页/云/云平台与虚拟化速查/vmkfstools 克隆与扩容磁盘
虚拟化操作94 条

vmkfstools 克隆与扩容磁盘

vmkfstools 在 ESXi 主机上复制/克隆虚拟磁盘并可指定置备类型:-i 克隆、-d 指定 thin 或厚置备,-X 扩容;克隆完成后需要把新磁盘接入虚机配置。

云平台与虚拟化速查云更新于 2026-10-13

vmkfstools 能做什么

vmkfstools 是 ESXi 主机自带的虚拟磁盘管理工具,常用两个能力:用 -i 克隆磁盘并在克隆时指定置备类型,用 -X 扩容现有磁盘。它直接操作数据存储上的 vmdk 文件,所以在哪台主机、哪个数据存储上执行,决定了目标设备的可用范围。克隆只是产生了一份新磁盘文件,要真正用上还得把新盘接入虚机配置,或者确认 .vmx 已指向新盘。

基本信息

适用平台ESXi 主机 Shell(开启 SSH 或用本地命令行)
克隆命令vmkfstools -i 源.vmdk -d thin 目标.vmdk
置备类型-d thin 精简、零置零厚置备、延迟置零厚置备
扩容命令vmkfstools -X 200G disk.vmdk
跨存储源与目标写不同的数据存储路径即可实现迁移
配套操作克隆后修改虚机配置指向新盘,或编辑 .vmx 中的磁盘路径
核对ls -lh 看目标文件与 -flat、-delta 等分段是否齐全

典型使用场景

  • 快速复制一套测试环境:克隆生产虚机磁盘后重新配置网络与主机名
  • 磁盘扩容:先扩容 vmdk 文件,再进入 guest 扩分区与文件系统
  • 跨数据存储迁移:把盘克隆到新存储,切换虚机配置后释放旧存储
  • 置备类型转换:把厚置备盘克隆为精简置备以节省容量
  • 制作模板盘:把标准系统盘克隆多份,用于批量部署

克隆、扩容与核对

克隆、扩容与核对
vmkfstools -i /vmfs/volumes/ds1/src/src.vmdk -d thin /vmfs/volumes/ds2/dst/dst.vmdk   # 跨存储克隆为精简置备
ls -lh /vmfs/volumes/ds2/dst/                                 # 核对目标文件与分段是否完整
vmkfstools -X 200G /vmfs/volumes/ds2/dst/dst.vmdk             # 扩容到 200G,只能增不能减
vmkfstools -D /vmfs/volumes/ds2/dst/dst.vmdk                  # 查看磁盘链信息,确认无遗留快照链
# 克隆完成后:编辑虚机设置,把硬盘指向新 vmdk;或修正 .vmx 中的路径
# 扩容完成后:进入 guest 用 parted/growpart 扩分区,再用 resize2fs 或 xfs_growfs 扩文件系统

置备类型对照

类型特点适用场景
精简置备(thin)按需分配,初始占用小,可能膨胀测试环境与容量不敏感的业务,需监控膨胀
厚置备延迟置零创建时分配全部空间但不置零,首次写入有开销常规生产虚机,兼顾性能与创建速度
厚置备置零创建时全量置零,写入性能最稳定对首次写入延迟敏感的业务,创建耗时长
差异盘(delta)基于父盘记录变更,依赖父盘存在临时验证场景,父盘丢失即无法使用
扩容后状态文件容量增加,分区未自动扩展必须配合 guest 内的分区与文件系统扩容
扩容是单向操作:vmkfstools 只能增大容量,无法缩小;需要缩小只能新建磁盘再迁移数据。
克隆运行中的虚机磁盘可能得到不一致的数据(相当于异常断电的状态)。需要一致性时先关机或做快照再克隆。

易错点

  • 克隆后忘记修改 .vmx 或虚机配置指向新盘:开机仍用旧盘,改动全落空
  • 扩容只改文件容量:guest 内还要扩分区与文件系统,否则空间用不上
  • 对运行中的虚机在线克隆:磁盘内容不一致,克隆盘启动后可能出现文件系统异常
  • 差异盘依赖父盘却单独搬迁:父盘缺失导致无法开机
  • 目标数据存储空间不足:克隆中途失败留下残缺文件,需清理后重来

数据来源与参考

  • VMware Docs:vmkfstools 命令
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌