如何将虚拟设备映像从RAW
直接格式转换为OVF
/OVA
格式?
有一种工具叫ovf工具.ovf/.ova/.vmx
允许从到 的转换.ovf/.ova/.vmx
。但它似乎不支持RAW
磁盘作为输入格式。
Virtual Box 还具有 VBoxManage,允许您从 进行转换,VDI|VMDK|VHD|RAW
但VDI|VMDK|VHD|RAW
不涉及OVF/OVA
格式。
我正在运行 Ubuntu/Debian GNU/Linux。
答案1
为避免引起混淆,在继续之前我想说的一件事是RAW
,、、、都是 (虚拟)硬盘文件,而、、是虚拟机设置文件。文件带有单独的虚拟硬盘(可以是 VMDK 格式,也可以是其他几种VMDK
格式之一),而文件则包含在一个虚拟机中。VHD
VDI
*
OVF
OVA
.VMX
OVF
OVA
(*
——大多数都是虚拟的!)
我个人之前从未见过虚拟机从 RAW 驱动器启动。如果您可以使用转换RAW
为 ,我建议使用(肯定)或 Virtual Box(不太确定!)来创建新的虚拟机并选择您刚刚转换的文件。VMDK
VBoxManage
VMWare Player or Workstation
VMDK
再次,我不确定 Virtual Box 使用什么作为其默认设置文件,但我知道 VMWare Workstation 使用VMX
,因此您在使用时应该不会遇到任何问题,ovftools
因为您将拥有一个具有正确硬盘的新虚拟机。
经过一番寻找,我唯一能找到的工具是实时显示它可以将 Raw 文件转换为 VMDK。
答案2
.ova
文件只是一个 Posix tar 文件:
$ file foo.ova
foo.ova: POSIX tar archive
如果您解压缩它,您将找到一个.ovf
描述虚拟机的(XML)文件、一个带有校验和(SHA-1)的文本文件以及一个或多个.vmdk
文件:
$ file *
foo-disk1.vmdk: VMware4 disk image
foo-disk2.vmdk: VMware4 disk image
foo-disk3.vmdk: VMware4 disk image
foo-disk4.vmdk: VMware4 disk image
foo-disk5.vmdk: VMware4 disk image
foo.ova: POSIX tar archive
foo.mf: ASCII text
foo.ovf: XML 1.0 document, ASCII text, with very long lines
因此,对于 RAW.ova
转换,您必须将原始文件转换为.vmdk
格式,写入正确的.ovf
文件,创建文件.mf
,并将所有内容压缩成.ova
文件。请注意,后者不包括压缩。.mf
文件中的行如下所示:
SHA1(foo.ovf)= e33370daa74544dc30841e1c527628e5c8610c54
它可以很容易地从中获得sha1sum
,但是格式不同:
$ sha1sum 'foo.ovf'
e33370daa74544dc30841e1c527628e5c8610c54 foo.ovf
所以:
$ sha1sum *.ovf *.vmdk | awk 'BEGIN { FIELDWIDTHS = "40 2 1024" } { print "SHA1(" $3 ")= " $1 }'
SHA1(HyperFile 3.3.0.ovf)= e33370daa74544dc30841e1c527628e5c8610c54
SHA1(HyperFile_3.3.0-disk1.vmdk)= a60c58d00010bdc715d96e89e34fd45f48a58b4c
SHA1(HyperFile_3.3.0-disk2.vmdk)= 92250a09ef4b924c51c64b37ba6dc7049eb24cc2
SHA1(HyperFile_3.3.0-disk3.vmdk)= aff779bf46c859506606fd8925f79ffb9a86d955
SHA1(HyperFile_3.3.0-disk4.vmdk)= 64dd05f7e5d73929234393c109b2d92d69dedc8e
SHA1(HyperFile_3.3.0-disk5.vmdk)= 157e9f9f6adeabcc41f228cd7b53fc0ef4da43f9
我将让您在这里阅读有关 OVF 格式的信息:https://www.dmtf.org/standards/ovf
答案3
我使用 Vboxmanage 将 raw 转换为 vdi。然后我在 Vbox 中创建一个新机器,使用 vdi 文件作为虚拟磁盘。我启动新机器一次以确保它能正常工作。关机后,我将机器导出为 Ova 文件。大多数 VM 工具(例如 Vbox)都允许导入 ova 并运行机器。
Vboxmanage convertfromraw--格式/vdi