VMDK转换为QCOW2以用于KVM迁移
2026-04-10
服务器虚拟化技术的发明极大地优化了硬件资源利用率和IT环境的工作效率。经过几年的发展,市场上已涌现出多种虚拟化解决方案。
要在不同平台之间迁移虚拟机或转移数据,IT 管理员通常需要使用 虚拟机到虚拟机(V2V)转换工具。当您的组织将工作负载从 VMware 环境迁移到基于 KVM 的平台(例如 Proxmox 或 OpenStack)时,此类任务十分常见。有时,您甚至可能需要反向操作!
在本指南中,我们将为您解释这些格式的含义、格式转换的重要性,以及如何使用命令行工具和图形界面安全地完成转换。
VMDK 和 QCOW2 格式是什么?
什么是 VMDK?
VMware vSphere 是全球领先的虚拟化解决方案。在服务器上安装 ESXi 虚拟机管理程序后,用户可轻松为各类业务系统创建虚拟机。
尽管虚拟机只是服务器的一小部分,但它与物理机一样完整,同样具备CPU、存储、网卡等组件。物理机会将应用程序数据保存到硬盘中。当需要克隆或迁移数据时,硬盘中的数据至关重要。在虚拟机中,也存在虚拟硬盘,其中同样包含应用程序和数据。得益于服务器虚拟化技术,这些虚拟硬盘实际上只是服务器上的文件。
在 VMware 虚拟机文件系统中,虚拟硬盘的文件格式为 .vmdk,即“虚拟机磁盘”(Virtual Machine Disk)的缩写。一个 VMDK 文件代表一块物理硬盘。
某些虚拟机管理工具(例如 XenCenter)可直接接受 VMDK 文件,无需预先转换。
一般来说,VMDK 文件通常非常大,往往超过数 GB。每当用户数据或服务器配置发生更改时,该文件都会被更新。VMDK 不具备获取增量数据的功能,因此只要其中任意文件发生变化,就必须重新备份整个文件。
要使用 VMware 的强大功能,VMDK 文件通常存储在共享存储中。您可以 将 VMDK 文件复制到另一个数据存储 以备后续使用。要定位某台虚拟机的 VMDK 文件,可在 vSphere 客户端中右键单击该虚拟机,然后选择 编辑设置,再展开 硬盘 查看其存储位置。
什么是QCOW2?
QCOW2(全称为QEMU写时复制格式第二代)是第一代QCOW格式的继任者。第一代QCOW格式性能仅勉强令人满意,但仍远不及原始(raw)格式。经过对第一代QCOW的优化,QCOW2在性能上已接近原始格式。目前,QCOW2已成为主流磁盘镜像格式之一。
为了更高效地利用 VMware 的数据,您可以更改虚拟硬盘的格式,使其更好地兼容 QEMU/KVM 环境,例如 Proxmox、oVirt、RHV、OLVM、OpenStack 等。
为何要将 VMDK 转换为 QCOW2?
为何要费心进行转换?每种虚拟化平台都有其偏好的磁盘格式:VMware 使用 VMDK;而基于 KVM 的系统则期望使用 QCOW2 或 RAW 镜像。
如果您尝试在 KVM 或 Proxmox 上直接运行 VMDK 文件而不进行转换,可能会遇到兼容性问题,甚至无法使用重要功能(例如实时快照或仅在 QCOW2 磁盘上支持的高效存储分配)。
通过将 VMDK 转换为 QCOW2:
您迁移的虚拟机在基于 KVM 的主机上运行顺畅。
您将解锁内置压缩或快速增量备份等功能。
如果因驱动程序或设置不兼容而导致问题,您可避免日后进行手动修复。
对于管理混合云或计划大规模迁移的组织而言,此流程是在不同平台之间迁移生产工作负载前必不可少的基础性工作。
方法1:使用 qemu-img 将 VMDK 转换为 QCOW2
qemu-img 是一款支持多种镜像格式(包括 vhd、qcow2、raw、vhdx、qcow、vdi、qed、zvh 和 zvhd2)的镜像转换工具。需将其所在目录添加到环境变量中,操作方式与配置 JDK 或 Python 类似。
在 Windows 环境中:
1. 下载安装包并进行安装
2. 安装完成后,将该目录添加到系统路径环境变量中
3. 通过输入以下命令验证安装:
qemu-img --help
如果 qemu-img 的版本信息显示在输出中,则表示安装成功。
4. 通过输入以下命令来转换图像:
qemu-img convert -p -f vmdk -O qcow2 my_centos7.vmdk my_centos7.qcow2
-p:显示转换进度
-f:源图像的格式
-O:目标图像的格式
-c:压缩目标图像
-t none:关闭缓存模式
在 Linux 环境中:
1. 根据您的操作系统选择相应的安装命令
对于 Ubuntu/Debian,请输入以下命令:
apt install qemu-img
对于 CentOS/Red Hat/Oracle,请输入以下命令:
yum install qemu-img
对于 SUSE/OpenSUSE,请输入以下命令:
zypper install qemu-img
2. 通过输入以下命令验证安装是否成功:
qemu-img -v
如果 qemu-img 的版本信息显示在输出中,则表示安装成功。
3. 通过输入以下命令来转换图像:
qemu-img convert -p -f vmdk -O qcow2 ./my_centos7.vmdk ./my_centos7.qcow2
qemu-img convert 命令还可用于将 qcow2 格式转换为 vmdk 格式。
转换图像后,请务必进行完整性检查。
qemu-img check target.qcow2
此操作检查结构完整性,而非客户操作系统内部的数据准确性,但可及早发现大多数问题。对于每个字节都至关重要的关键服务器?建议在测试环境中以只读方式同时挂载新旧镜像,并在客户操作系统内部对比关键文件的校验和——这是系统管理员公认的黄金标准!
如何确保转换后的镜像能在虚拟机上正常运行?
首先,使用 virt-manager、Proxmox VE 等工具,或直接编辑 libvirt XML(如通过 virsh edit vmname),将您的新 .qcow2 文件挂载到测试虚拟机定义中。请确保:
1. 正确的控制器类型需与之前使用的类型一致(IDE/SATA/SCSI/VirtIO)。
首先在隔离环境中启动虚拟机——切勿直接在生产环境中启动!启动过程中请密切观察:
如果启动失败:
在虚拟机管理程序配置中再次确认启动顺序设置。
是否到达登录界面?
是否检测到网络接口?
是否存在任何驱动程序错误?
注意检查缺失的驱动程序;Windows客户机在迁移后通常需要手动添加VirtIO驱动程序。
登录后:
如果已安装旧版 VMware Tools,请将其卸载。现已不再需要!
在 Linux/Windows 客户机中安装 QEMU 客户机代理(qemu-ga),以确保在 KVM/QEMU 主机下能正常实现干净关机等功能。
最后,
在切换生产流量之前,端到端测试应用程序功能。
切换后请密切关注日志,以防数小时后出现任何细微问题!
方法2:使用QEMU管理器(图形界面)将VMDK转换为QCOW2
并非所有人都喜欢输入命令——或者您可能正在Windows系统上操作,而无法便捷地访问命令行!针对这类情况,可使用QEMU管理器等图形化工具,将复杂的操作封装在按钮与菜单之后。
QEMU Manager 是一个较老的项目,主要面向 Windows 用户设计;近期开发进度有所放缓,因此根据您的具体需求,可能存在更新的替代方案——但只要正确安装,它仍能快速完成基本任务!
从可信网站安装 QEMU Manager 后:
1. 启动应用程序;主窗口出现。
2. 点击文件,然后选择打开磁盘映像
3. 浏览/选择您的 .vmdk 文件
4. 进入工具菜单,选择转换磁盘镜像
5. 将输出格式下拉菜单明确设置为 QCOW2
6. 选择目标文件夹/文件名
7. 点击开始按钮
完成后,请确认新的 .qcow2 文件已存在于所选位置,并使用您偏好的虚拟机管理工具,按照上述方式将其附加并测试。
如果频繁的格式转换是日常工作流程的一部分,那么无论如何都建议学习核心的 qemu-img 命令,因为它们不仅提供更高的灵活性,还支持通过脚本实现自动化操作。
如何使用 Vinchin 备份与恢复工具直接迁移虚拟机?
Vinchin 备份与恢复支持广泛的虚拟化平台,包括 VMware、Hyper-V、Proxmox VE、oVirt、OLVM、RHV、XCP-ng、XenServer、OpenStack 等。其迁移流程简洁高效:只需先备份源虚拟机,再将其恢复至目标主机即可。
Vinchin备份与恢复软件的V2V功能一项显著优势在于,其备份系统内嵌了驱动程序库,可在恢复过程中自动替换所需驱动程序。所有任务均可通过直观的Web控制台界面轻松管理。
您无需在每台虚拟机上安装代理,而是可直接使用备份与还原功能来迁移虚拟机。例如,在用户友好的网页控制台中,只需 4 个步骤即可将 VMware 虚拟机迁移到 Proxmox。
1. 选择 VMware 虚拟机的备份
2. 选择 Proxmox 主机
3. 选择恢复策略,或跳过此步骤

4. 提交任务

Vinchin 备份与恢复软件已帮助众多企业实现虚拟机无数据丢失迁移,您也可在此立即开启为期 15天的全功能免费试用,亲身体验其在虚拟机迁移中的便捷性。如需任何帮助,可随时联系我们。
下载免费试用版
适用于多种数据备份
* 15天全功能免费安全下载
VMDK 转 QCOW2 常见问题解答
1. 是否可在不同操作系统上将 VMDK 转换为 QCOW2?
是的。QEMU-convert 可安装在 Windows 和 Linux 操作系统上,因此您可以选择合适的一个来转换虚拟磁盘。
2. 转换后虚拟磁盘大小是否会增大?
转换后的虚拟磁盘可能比原始磁盘更大,因此您可以使用专业的虚拟机迁移解决方案 Vinchin 备份与恢复来避免此问题。
总结
全球存在多种虚拟化平台。要将数据迁移到另一个平台,IT管理员通常需要对源虚拟机执行格式转换操作。本文为IT管理员介绍了将vmdk格式转换为qcow2格式的方法。
Vinchin 备份与恢复是一款便捷的工具,可让您无需复杂命令即可将 VMDK 导入 KVM。不要错过免费试用机会。