使用 dd 命令,是否可以创建 .vdi、.qcow、.qcow2、.vhd、.vhdx 和 .vmdk 类型而不是 .img 类型的图像?
dd if=/dev/hda of=/path/to/desti.**qcow2 or .vhmdk** etc formats
谢谢,非常感谢您的回答
答案1
您可以先通过创建原始图像dd
,然后通过以下方式转换为任何支持的格式,qemu-img
例如:
dd if=/dev/hda of=/path/to/dir/hda.raw qemu-img convert -O qcow2 /path/to/dir/hda.raw /path/to/dir/hda.qcow2
或者为了节省磁盘空间省略 dd 部分:qemu-img
可以直接从磁盘读取:
qemu-img convert -O qcow2 /dev/hda /path/to/dir/hda.qcow2
两种情况下都会创建 qcow2 格式的虚拟磁盘。要查看支持的格式和选项列表,请参阅man qemu-img
。您可能需要执行以 为前缀的命令sudo
才能访问/dev/hda
。
答案2
不可以,但有一个例外。
dd
是一个非常简单的程序,它只是将字节从输入文件复制到输出文件,并可选择进行简单的转换,例如交换字节、将大写 ASCII 字母映射到小写字母或反之亦然,或在 ASCII 和 EBCDIC 之间进行转码。它完全没有文件格式的概念;因为dd
文件只是字节序列。使用man dd
以获取更多信息。
有一种 VMware 虚拟磁盘,称为“平面”(具体来说,monolithicFlat
和twoGbMaxExtentFlat
)。“平面”VMware 虚拟磁盘 实际上是直接逐块复制硬盘映像;它们至少包含两个文件:一个描述文件(扩展名为 的文本文件.vmdk
)和一个或多个数据文件。您可以使用dd
它将数据从硬盘复制到数据文件,创建合适的描述文件(很容易做到)并将该数据文件(如果您愿意,可以将其拆分成几个范围)用作“平面” VMware 虚拟磁盘。据我所知,您也可以将此类虚拟磁盘与 VirtualBox 一起使用。