我想将 vmdk 转换为 dvi,但我遇到了麻烦
VBoxManage convertfromraw --format VDI 'OWASP BWA-cl1.vmdk' OWASPBWA.vdi
Converting from raw image file="OWASP BWA-cl1.vmdk" to file="OWASPBWA.vdi"...
Creating dynamic image with size 780 bytes (1MB)...
VBoxManage: error: VD: The given disk size 780 is not aligned on a sector boundary (512 bytes)
VBoxManage: error: Error code VERR_VD_INVALID_SIZE at /home/vbox/vbox-6.1.32/src/VBox/Storage/VD.cpp(6242) in function int VDCreateBase(PVDISK, const char*, const char*, uint64_t, unsigned int, const char*, PCVDGEOMETRY, PCVDGEOMETRY, PCRTUUID, unsigned int, PVDINTERFACE, PVDINTERFACE)
3VBoxManage:错误:无法创建磁盘映像“OWASPBWA.vdi”:VERR_VD_INVALID_SIZE
答案1
VirtualBox 中的命令convertfromraw
无法从 VMDK 文件进行转换。正如其名称所示,它只能从“原始”图像文件(即未任何特殊格式)。
(扇区边界不是问题;出现此错误消息是因为convertfromraw
不理解输入的图像格式并认为虚拟磁盘比它应该的要小。)
VirtualBox 实际上应该能够直接使用 VMDK 映像 – 它不需要 VDI。
使用qemu-img
QEMU 命令在 VMDK 和 VDI(以及其他格式)之间进行转换:
qemu-img convert -f vmdk -O vdi image.vmdk image.vdi