使用VirtualBox引导物理驱动器/分区[重复]


12

我的硬盘驱动器上有两个分区,一个分区用于Windows,一个分区用于linux。我想在Linux中使用VirtualBox将Windows分区作为虚拟机启动。我该如何实现?


7
如果您打算有时物理引导分区,有时甚至虚拟引导分区,请注意,设置起来并不容易。Windows不喜欢在其下面更改硬件。
哈里·约翰斯顿

对于从您选择的搜索引擎登陆此处的任何人,请在此处
Codebling 18'Nov

Answers:


6

实际上,有一个非常简单的解决方案可以实现这一目标。以下过程将创建一个虚拟磁盘(.vmdk),该虚拟磁盘将引导到指定的驱动器/分区。您实际上是直接“假”引导到驱动器,因此创建的虚拟驱动器的大小不是很大,并且也不会更大。

但是,以下建议的不足之处在于它实际上会启动。意思是,您可以运行其中的任何程序或文件,但是一旦在虚拟机中,就无法在物理驱动器上进行设置/程序更改。如果要添加程序,更新等...,则通常必须引导至驱动器,进行所需的更改,然后从VirtualBox引导。我不知道这是否适合您,但这里是商品。

此示例的一部分是在Windows中完成的,因为我不了解Linux目录结构和路径变量,但是VirtualBox命令将是相同的,而与主机OS无关。相同的过程只是相应地补充了OS命令

1:WindowsKey+ R>键入diskmgmt.msc 记下您要虚拟化的驱动器的磁盘。Linux的替代为弄清这一点会运行下列工具之一> fdisklsblkgparted

2:使用Admin / Sudo特权> type打开CommandPromptTerminal cd %programfiles%\oracle\virtualbox。我不知道VirtualBox的默认目录路径在Linux发行版中是什么,只是找到它并cd指向它即可。

3:运行以下VirtualBox命令: VBoxManage internalcommands createrawvmdk -filename "%USERPROFILE%"\.VirtualBox\CUSTOMNAMEOFVHD.vmdk -rawdisk \\.\PhysicalDrive#

〜将“ CUSTOMNAMEOFVHD”替换为您想要的任何内容。您也可以将该文件的整个路径更改为其他内容。这只是在告诉VBoxManage将创建的内容放在哪里.vhd

〜更改最后一个字符#做步骤1中记录的磁盘驱动器号。

Windows教程:http//www.pendrivelinux.com/category/virtual-machine/

Ubuntu特定示例:https : //askubuntu.com/questions/168156/how-to-use-a-real-partition-with-windows-7-installed-in-a-virtualbox-vm


3
有用的提一下,要使用这个新的.vhd“ VirtualBox Manager”,必须以管理特权启动,因为访问原始设备需要这样做。
乔纳森·科马尔

\\.\PhysicalDrive#是最重要的部分。您不能在此处放置磁盘映像文件,它必须是Windows下的块设备(在Linux下)“物理”驱动器。
masterxilo

但是,在Linux下,很容易将任何文件挂载为虚拟块设备(使用lostup),而我不知道在Windows下的简便方法。
masterxilo

5

《 VirtualBox手册》的第10章“高级主题”开始

要在Linux主机上为原始分区支持创建特殊映像(如前所述,它将包含少量数据),请使用以下命令

VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk /dev/sda -partitions 1,5

此示例将创建映像/path/to/file.vmdk(同样,它必须是绝对的),并且/ dev / sda的分区1和5将可供来宾访问。

例如,如果您的硬盘驱动器是/dev/sda/Windows分区/dev/sda2,则Windows分区是,则您使用的命令可能如下所示:

VBoxManage internalcommands createrawvmdk -filename ~/windows.vmdk -rawdisk /dev/sda -partitions 2

这将windows.vmdk在您的主文件夹中创建一个文件,然后将其挂载到虚拟机中。


如果您先安装virtualbox.org/attachment/wiki/Migrate_Windows/MergeIDE.zip,这可能会起作用。当然很酷的主意。
MattPark

2

我爱virtualbox

但是通常您不能仅通过从Virtualbox中读取硬盘驱动器就将一台物理Windows计算机突然虚拟化为一台虚拟计算机。(经验和来源)轻敲出的解决方案似乎更简单,但我认为您无法成功启动。您可能要先尝试一下。希望您的Windows安装在尝试加载所有新驱动程序等时不会损坏,但可能会立即只是BSOD。

如果挖掘出的解决方案不起作用,请继续尝试。

使用vmware独立转换器工具:确保还安装了vmware player(免费)。

借助VMware Standalone,您可以将虚拟机,正在运行的物理机或acronis真实映像备份转换为虚拟机。它还将对所有驱动程序起作用,以便您的计算机可以虚拟运行。

  1. 如果您尝试了轻拍的解决方案,请将vmware-converter指向您在此处创建的virtualbox vm。vmware-converter将读取它,将其转换为虚拟机,修复驱动程序,然后将其安装在vmware player中。从那里,您可以根据需要将其转换为virtualbox格式,也可以仅使用播放器。

  2. 如果您没有尝试使用他的解决方案,或者如果选项1不喜欢Rawdisk读取并失败,Virtualbox会提供一篇非常好的文章,内容涉及使用linux将真实的Windows安装转换为virtualbox。

基本上,

  • 首先在Windows机器上安装MergeIDE
  • cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi NUMBEROFBYTES
  • 将驱动器添加到virtualbox并创建新的vm
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.