qemu-img云镜像格式转换
一、qemu-img 基本概念
qemu-img 是 QEMU 提供的磁盘镜像管理工具,支持创建、转换、查看各种虚拟磁盘格式:
支持的格式包括:
qcow2(QEMU 默认格式,支持快照、压缩)rawvdi(VirtualBox)vmdk(VMware)vhd/vhdxvpc- 等等。
二、查看 vdi 信息
如果你有一个 .vdi 文件,例如:
1 | ls Fedora-Cloud-Base-Generic-42-1.1.aarch64.vdi |
可以直接查看其信息:
1 | qemu-img info Fedora-Cloud-Base-Generic-42-1.1.aarch64.vdi |
输出类似:
image: Fedora-Cloud-Base-Generic-42-1.1.aarch64.vdi
file format: vdi
virtual size: 10G (10737418240 bytes)
disk size: 2.1G
cluster_size: 2097152
三、VDI 转换为其他格式
1. 转换为 qcow2(QEMU/UTM/Lima 通用)
1 | qemu-img convert -f vdi -O qcow2 Fedora.vdi Fedora.qcow2 |
-f指定源格式-O指定目标格式
2. 转换为 raw(通用性最高)
1 | qemu-img convert -f vdi -O raw Fedora.vdi Fedora.raw |
适合手动挂载、使用 guestfish 或 losetup 挂载到系统里。
例如:
1 | sudo losetup -fP Fedora.raw |
3. 转换为 VMDK(VMware)
1 | qemu-img convert -f vdi -O vmdk Fedora.vdi Fedora.vmdk |
4.转换vdi
qemu-img convert -f qcow2 -O vdi source.qcow2 target.vdi
参数解释:
-f qcow2:源文件格式-O vdi:目标格式source.qcow2:源镜像target.vdi:输出 vdi 文件名
四、在 ARM/M1 上实际使用建议
由于 VirtualBox 无法运行 x86 虚拟机(即使有 .vdi),你可以这样做:
用 qemu-img 转为 qcow2
1 | qemu-img convert -f vdi -O qcow2 mybox.vdi mybox.qcow2 |
在 UTM / QEMU / Lima 中使用
在 UTM GUI 创建虚拟机时选择“导入磁盘镜像”→ 选择
mybox.qcow2在 命令行 QEMU 下可直接启动:
1
2
3
4
5
6qemu-system-aarch64 \
-m 4096 \
-cpu cortex-a72 \
-machine virt \
-drive file=mybox.qcow2,if=virtio \
-nographic