玩虚拟化的同学都经历过这种绝望 —— 辛辛苦苦下载了一个 10G 的 IMG 镜像,上传到 Proxmox 之后才发现,磁盘格式不对;或者导入完虚拟机根本起不来,排查半天才发现是格式转换出了岔子。今天这篇文章,把 img 转 KVM 最常用的三个命令 ——img2kvm、qemu-img、qm importdisk 一次性讲清楚,文末还附了其他的转换工具,读完这篇,镜像转换你说了算。

一、如果你正在和下面任何一种场景较劲,这篇文章就是为你写的:
🖥️ 折腾软路由 / OpenWrt:网上下的固件大多是 .img 格式,怎么塞进 Proxmox 虚拟机?
☁️ 跨平台迁移虚拟机:VMware 的 .vmdk 怎么转成 Proxmox 能用的 .qcow2?
📦 云上镜像上云下:从云厂商导出的 RAW 镜像,想在本地的 KVM 环境跑起来?
🧪 做虚拟化实验:VirtualBox 的 .vdi、Hyper-V 的 .vhdx,不同虚拟化平台之间格式互转到底该怎么搞?
这些问题的本质都一样:虚拟磁盘镜像的格式转换与导入。搞懂了,就是一句命令的事;搞不懂,搜遍全网你可能都在原地打转。
二、img2kvm:Proxmox 专属的一键导入脚本

工具介绍
img2kvm 是一个社区开源的 Shell 脚本工具,专门为了解决”把 .img 镜像文件快速导入 Proxmox 虚拟机”这个痛点而生。它不涉及复杂的参数配置,非常适合新手和追求效率的玩家。
使用场景
仅适用于 Proxmox 环境,适合新手或追求效率的玩家快速导入.img 格式镜像(如 OpenWrt 软路由固件)。
使用方法
# 命令格式:./img2kvm <镜像文件名> <虚拟机ID> <磁盘路径及序号>
# 1. 在Proxmox Web界面创建空虚拟机,记录VMID(如101)
# 2. 将img2kvm脚本和.img镜像上传至Proxmox节点/root目录
# 3. 赋予脚本执行权限
chmod +x img2kvm
# 4. 一键导入
./img2kvm openwrt.img 101 vm-101-disk-1
三、qemu-img:跨平台的虚拟磁盘格式转换瑞士军刀
工具介绍
qemu-img 是 QEMU 项目自带的命令行工具,也是整个虚拟化生态中最核心的磁盘镜像管理工具。不管你用什么虚拟化平台,只要涉及虚拟磁盘格式转换,最终都要和它打交道。
支持的格式包括:raw、qcow2、vmdk、vdi、vhd/vhdx、qed、qcow,几乎囊括了所有主流虚拟化平台。
使用场景
任意虚拟化平台下的磁盘格式互转(如 vmdk 转 qcow2、vdi 转 qcow2)、镜像信息查看、快照管理等复杂场景。
使用方法
# 1. 安装(以Debian/Ubuntu/Proxmox为例)
apt install qemu-utils -y
# 2. 核心操作:格式转换
# 基本语法
qemu-img convert -f <源格式> -O <目标格式> <源文件> <目标文件>
# 示例:IMG(raw)转qcow2
qemu-img convert -f raw -O qcow2 openwrt.img openwrt.qcow2
# 带进度条+压缩转换
qemu-img convert -p -c -f raw -O qcow2 source.img target.qcow2
# 3. 查看镜像信息
qemu-img info openwrt.qcow2
四、qm importdisk:Proxmox 官方推荐的镜像导入命令
工具介绍
qm importdisk 是 Proxmox VE 原生的磁盘导入命令,也是 PVE 官方推荐的镜像导入方式。它的核心优势在于一步到位:格式转换 + 导入存储 + 关联虚拟机,一条命令全搞定。
使用场景
Proxmox 环境下各类镜像的导入(优先推荐),尤其适合生产环境,出错率低。
使用方法
# 1. 在Proxmox Web界面创建空白虚拟机,记录VMID(如102)
# 2. 上传镜像至PVE节点(如/var/lib/vz/template/iso/)
# 3. 导入磁盘(格式转换+存储导入)
qm importdisk 102 /var/lib/vz/template/iso/openwrt.img local-lvm --format qcow2
# 4. 挂载磁盘到虚拟机
qm set 102 --scsihw virtio-scsi-pci --scsi0 local-lvm:vm-102-disk-0
# 5. (可选)设置启动顺序
qm set 102 --boot order=scsi0
命令格式:qm importdisk <源镜像路径> <目标存储> --format <目标格式>
总结
回头看看这三种工具,它们分别代表了 Proxmox 社区发展的三个阶段:

- img2kvm 是”社区野蛮生长”时代的产物——那时官方功能还不完善,玩家自己动手写脚本解决痛点;
- qemu-img 是整个 KVM/QEMU 生态的基石——无论社区怎么发展,底层格式转换始终离不开它;
- qm importdisk 是 Proxmox 走向成熟的标志——官方终于提供了一个开箱即用的标准方案。
对于这三个工具的选择,我的建议很简单:
- 纯 Proxmox 日常导入:优先 qm importdisk
- 多格式跨平台转换(复杂场景):qemu-img
- 老玩家/怀念情怀/懒人一键 PVE 导入:img2kvm
除上文三款核心工具外,还有多款针对性镜像转换工具按需选用:

- VMware 整机迁 PVE,解决开机蓝屏:virt-v2v
- Windows 图形化转换、新手:StarWind V2V Converter
- 原生无 Proxmox KVM 服务器:virt-install + virsh
- 批量 VMware 迁 Proxmox:hyper2kvm / any2kvm
- VirtualBox 镜像处理:VBoxManage
- 物理机转虚拟机:Disk2vhd、StarWind V2V Converter
镜像格式转换,说到底就是个 “翻译” 的过程 —— 把一个平台能读懂的文件,翻译成另一个平台的语言。工具方法都在你手里了,剩下就是动手试试。






























































