Wer*_*eta 86 virtualbox bare-metal virtual-machine
是否可以将 .vdi 文件转换为可以刻录到 cd 或 dvd 的 .iso 并使其像安装程序一样。或者是否可以将虚拟机转换为物理环境?
qua*_*ote 70
是的,也不是。
您可以使用VBoxManage工具将 VDI 转换为磁盘映像。此命令将注册的虚拟磁盘映像克隆到另一个映像文件。如果您想将您的虚拟磁盘转换为另一种格式,这是要使用的官方 VirtualBox 工具[*]。
VBoxManage clonehd file.vdi output.img --format RAW
Run Code Online (Sandbox Code Playgroud)
VBoxManage internalcommands converttoraw file.vdi output.img
Run Code Online (Sandbox Code Playgroud)
但是……输出的 IMG 文件不是 ISO 映像,并且安装的操作系统不会配置为从可引导 CD/DVD 运行。您可以将 IMG“刻录”(写入)到硬盘驱动器上,它可能会在裸硬件上启动(例如不在虚拟机中)。但它可能不会,因为安装在该 IMG 上的操作系统期望看到 VirtualBox 提供的虚拟硬件,而您正在它不期望的真实硬件上启动它。
某些版本的 Windows 不能很好地处理这种情况;一些 Linux 发行版可以。有时可以配置操作系统(事先或之后)以将其从一个环境迁移到另一个环境,但具体步骤完全取决于要迁移的操作系统。
在 Windows 上,您可能需要指定程序的完整路径:
"C:\Program Files\Sun\VirtualBox\VBoxManage.exe" [...]
Run Code Online (Sandbox Code Playgroud)
将C:\Program Files\Sun\VirtualBox 添加到您的 PATH 以使用简短版本。
[*]我假设“--format RAW”选项将转换为标准磁盘映像,就好像您在物理硬盘上使用了dd命令一样。但坦率地说,我还没有找到任何支持这一点的文档,所以请注意这可能不正确。
[+]我刚刚在 VirtualBox 3.1.2 下测试了这两个命令。根据md5sum,两个输出文件是相同的,但我还没有完全测试输出文件。
另请参阅VirtualBox 论坛上的“关于 VDI”的教程。
小智 22
如果您的 vdi 文件包含分区并且您只想提取其中一个分区,请使用以下命令:
首先,如quack quixote所说,将vdi文件转换为raw image文件:
# VBoxManage clonehd file.vdi file.raw --format RAW
Run Code Online (Sandbox Code Playgroud)
然后为图像设置循环设备:
# loopdev=$(losetup --show -r -f file.raw)
Run Code Online (Sandbox Code Playgroud)
使用 kpartx 为原始文件中的每个分区创建设备:
# apt-get install kpartx
# kpartx -a $loopdev
Run Code Online (Sandbox Code Playgroud)
看看我们现在有哪些设备。在此示例中,由于原始映像中只有一个分区,因此只有一台设备:
# ls /dev/mapper/loop*
/dev/mapper/loop0p1
Run Code Online (Sandbox Code Playgroud)
现在挂载它以验证一切正常:
# mkdir /mnt/part1
# mount /dev/mapper/loop0p1 /mnt/part1
# ls /mnt/part1
# umount /mnt/part1
Run Code Online (Sandbox Code Playgroud)
使用 dd 将分区内容复制到另一个目标分区:
# dd if=/dev/mapper/loop0p1 of=/dev/sda2 bs=1M
Run Code Online (Sandbox Code Playgroud)
完成后再次删除设备映射:
# kpartx -d file.raw
Run Code Online (Sandbox Code Playgroud)
小智 13
答案是肯定的,如果您的主机和来宾系统是 Linux。它是通过包qemu和TKLPatch. 您可以使用 VDI 或 VMDK 文件。
阅读更多:
小智 7
我试图VBoxManage clonehd file.vdi output.img --format RAW从接受的答案,但没有成功。
在 Windows 7 主机上使用 Windows 8.1 虚拟机对我有用的是:
VBoxManage clonehd source.vdi target.vhd --format vhd| 归档时间: |
|
| 查看次数: |
177171 次 |
| 最近记录: |