如何将.img文件转换为vhd?


13

我有一个映像文件(基于Linux的映像),并希望将其转换为VHD,以便可以将其用于创建hyper-V VM。

我使用“ qemu-img convert”将原始格式转换为vpc格式,但vpc不适用于hyper-V,“ qemu-img convert”不支持vhd。

什么是正确的方法?

该映像只有一个分区:

Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      32.8kB  4295MB  4295MB  primary  ext3         boot

Answers:


7

VhdTool应该能够进行转换。

vhdtool.exe /convert myimage.raw

谢谢你的工作。但是,该命令不会创建新的vhd,而是在现有映像文件的末尾附加页脚。我只需要将文件重命名为.vhd,即可被hyper-v vm创建向导识别。
user1060517 2012年

另外,vhdtool.exe具有Windows Server OS / NTFS的先决条件。我想知道是否可以在Linux机器上使用任何类似的工具(原始到vhd)?
user1060517 2012年

我不知道一个。但是由于目标系统管理程序是Hyper-V,因此这不是什么大问题。:)
迈克尔·汉普顿

链接已死...
apple16 2014年

3
@ apple16是的,它已经死了。微软出于某种原因将其取消。尽管仍然可以通过仔细的网络搜索找到副本,但我认为最好不要链接到任何此类URL,因为它们也可能随时间而变化,并且如果需要,也可以将其输入Wayback Machine。
迈克尔·汉普顿

6

我不确定这种情况持续了多长时间,但是由于这是该问题的#1搜索结果,因此我将在当前回答。qemu-img当前支持VHD。VHD的参数是vpc。可以在这里找到http://docs.openstack.org/image-guide/content/ch_converting.html

万一链接中断,这是复制/粘贴

将图像从一种格式转换为另一种格式通常很简单。qemu-img转换:原始,qcow2,VDI,VMDK

qemu-img convert命令可以在多种格式之间进行转换,包括原始,qcow2,VDI(VirtualBox),VMDK(VMWare)和VHD(Hyper-V)。表7.1。qemu-img格式字符串

**Image format**    **Argument to qemu-img**
raw                     raw
qcow2                   qcow2
VDI (VirtualBox)        vdi
VMDK (VMWare)           vmdk
VHD (Hyper-V)           vpc

本示例会将名为centos63.dsk的原始图像文件转换为qcow2图像文件。

$ qemu-img convert -f raw -O qcow2 centos64.dsk centos64.qcow2

要将vmdk转换为raw,您可以执行以下操作:

$ qemu-img convert -f vmdk -O raw centos64.vmdk centos64.img

注意

-f格式标志是可选的。如果省略,则qemu-img将尝试推断图像格式。

VBoxManage:将VDI(VirtualBox)转换为原始数据

如果使用VirtualBox创建了VDI映像,则可以使用VirtualBox附带的VBoxManage命令行工具将其转换为原始格式。在Mac OS X上,默认情况下,VirtualBox将映像存储在〜/ VirtualBox VMs /目录中。下面的示例根据VirtualBox VDI映像在当前目录中创建原始映像。

$ VBoxManage clonehd〜/ VirtualBox \ VMs / fedora18.vdi fedora18.img --format原始


3

正如上面所指出的apple16有一个非常类似的问题在这里是避开那VhdTool似乎不再可用的问题。Virtualbox附带了一个名为“ VBoxManage”的工具,该工具非常完美。假设您使用例如拥有磁盘的普通映像文件dd,则可以执行以下操作:

VBoxManage convertfromraw myfile.dd myfile.vhd --format VHD


2

如果仍然有兴趣将原始磁盘映像转换为vhd,请使用以下命令:

qemu>qemu-img.exe convert e:\src.img -O vpc -o subformat=dynamic f:\dst.vhd

不要忘记将显示的文件名更改为您的文件名。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.