从现有 Linux 系统创建 VM

Create VM from existing Linux System

我刚刚在 Windows 7 主机上创建了一个新的虚拟机 Ubuntu 14.04。 事先,我创建了 Ubuntu 的 iso-image - PC 使用

dd if=/dev/sda | pv > /path/to/image.iso

我也试过了

dd if=/dev/sda of=/path/to/image.iso

然后我像第一个答案中描述的那样将图像添加到虚拟机 here 但每次我想启动虚拟机时它 returns

Fatal: No bootable medium found. System halted!

我还将 /etc/fstab 中的 UUID 更改为 /dev/sda1 之类的东西,在 /etc/default/grub 中取消注释 "GRUB_DISABLE_LINUX_UUID=true" 然后 运行 update-grub 并删除了所有内容在 /etc/udev/rules.d/70-persistent-net.rules

中的第一条评论之后

我正在将 iso-image 写入 NTFS 格式的外部硬盘驱动器。我不确定这是问题所在还是我遗漏了什么?

感谢任何建议!

ISO 是结构化映像,而不是从硬盘驱动器读取的原始字节:(通常)无法仅通过使用 dd 获得 ISO。您需要将原始图像(您当前调用的 image.iso)转换为 VirtualBox 格式。在命令行中,这非常简单:

$ vboxmanage convertfromraw
Usage:

VBoxManage convertfromraw   <filename> <outputfile>
                            [--format VDI|VMDK|VHD]
                            [--variant Standard,Fixed,Split2G,Stream,ESX]
                            [--uuid <uuid>]
VBoxManage convertfromraw   stdin <outputfile> <bytes>
                            [--format VDI|VMDK|VHD]
                            [--variant Standard,Fixed,Split2G,Stream,ESX]
                            [--uuid <uuid>]

并直接将其转化为对您有用的东西:

$ vboxmanage convertfromraw image.iso image.vdi --format VDI

然后,将虚拟机配置中的 image.iso 更改为 image.vdi,您 应该 就可以了。

需要说明的是,由于您之前的安装可能是 硬盘驱动器,因此您应该确保 image.vdi 作为硬盘驱动器连接,而不是另一个存储类型。