我使用双启动将Fedora和Windows 7安装在不同分区上。
现在,在运行Fedora时,我想占用Windows分区并创建可以在VirtualBox中运行的映像-如何执行此操作?
我使用双启动将Fedora和Windows 7安装在不同分区上。
现在,在运行Fedora时,我想占用Windows分区并创建可以在VirtualBox中运行的映像-如何执行此操作?
Answers:
您可能会对有据可查的“内部”功能感兴趣。您可以创建一个“原始磁盘”映像,该映像基本上将所有命令传递到硬盘驱动器上的分区。这样,您可以保留Windows分区,并尝试从VirtualBox引导它。
您可以如下创建原始图像:
VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk
-rawdisk /dev/sda -partitions 1,5
其中1,5
表示分区1和5在/dev/sda
请注意,这种完美工作的可能性很小。Windows并非因适应硬件的极端变化而广为人知。
您可以在此处阅读有关原始磁盘的更多信息:10.8.1。使用来宾的原始主机硬盘
正如Matt所说,您使用VBoxManage命令,而Windows可能不喜欢它。但是,有一种更快的方法,它不会占用过多的磁盘空间。您可以将stdin用作convertraw
命令的输入(如果您读了Matt的答案,则与convertdd
命令相同:
# dd if=$WinDevice | VBoxManage convertfromraw stdin windows.vdi $Bytes
其中$ WinDevice是Windows分区的设备(例如/ dev / sda2),而$ Bytes是确切的字节数(例如1488581554176;您可以通过在Windows中右键单击C:驱动器来确定它)在“我的电脑”中,点击“属性”,它是“容量:”行,位于“已使用”和“可用”空间线下方,在饼图上方)。
请注意,我自己还没有尝试过,并且我相信您可能需要使用/ dev / sda而不是/ dev / sda2,前提是您不会写入Windows所在的驱动器。这样,您就可以捕获分区表和引导加载程序。
我只是想做几乎完全相同的事情,尽管来自Ubuntu。我不想创建整个硬盘的映像,并且对VM使用物理磁盘对我来说似乎不是一个好主意。我终于找到了解决方案:
(推荐)如果没有Windows光盘或ISO,请下载ISO。我用的是X17-59465.iso
如果需要,请缩小窗口分区,以减小图像尺寸。我更喜欢从Linux使用GParted(避免使用正在使用的“可移动”文件)进行此操作,然后重新启动到Windows,让它执行chkdsk,然后重新启动回Linux。
如果已安装,请卸载Windows分区,以确保在对其进行成像时不会改变
sudo umount /windows
安装MBR软件包。在Ubuntu上:
sudo apt-get -y install mbr
创建MBR的映像(根据需要更改设备)
sudo dd if=/dev/sda of=mbr.img bs=512 count=1
在映像上安装新的MBR,以摆脱GRUB
sudo install-mbr mbr.img
创建原始VMDK映像,该映像将镜像现有分区布局(根据需要更改设备和分区)
sudo vboxmanage internalcommands createrawvmdk -filename windows.vmdk -rawdisk /dev/sda -partitions 2 -mbr mbr.img
创建一个VDI映像,该映像将复制上一步中选择的分区中的数据
sudo vboxmanage clonehd windows.vmdk windows.vdi --format VDI
更改新图像文件的所有权
sudo chown $USER. windows.vdi
清理
sudo rm mbr.img windows.vmdk windows-pt.vmdk
(可选)压缩新的磁盘映像
vboxmanage modifyhd windows.vdi --compact
使用刚为硬盘创建的映像创建一个新的Windows 7 VM
您可以尝试启动VM,但是它可能会失败。如果支持,则将虚拟机引导至Windows光盘/ ISO→ 修复计算机,如果提供了选项,请单击修复并重新启动。
资料来源:
-rw------- 1 root root 40G Feb 4 09:28 windows.vdi
-rw------- 1 root root 722 Feb 4 09:11 windows.vmdk
我有一个装有Windows 10的硬盘,并将其放在VirtualBox机器中。为此,我遵循以下步骤:
就这样,启动您的新VirtualBox计算机。