虚拟运行双启动操作系统

虚拟运行双启动操作系统

我有一个双启动系统,其中 Windows 7 和 Ubuntu 11.10 安装在不同的分区上,按照以下分区方案:

1. MBR for windows
2. Windows system partition (NTFS) - i.e. C:\
3. Ubuntu / partition (ext4)
4. Ubuntu /home partition (ext4)
5. Ubuntu /boot partition (ext4)
6. Ubuntu swap partition
7. Data partition (NTFS) - mounted as D:\ in windows and /media/data/ in Ubuntu

当我处于 Windows 会话中时,我希望能够从我的磁盘启动一个装有 Ubuntu 系统的虚拟盒。也就是说,我并不想在某个.vhd文件上虚拟地安装另一个 Ubuntu,而是使用硬盘上的数据实际启动它。

我以前使用过 Windows Virtual PC,但从未将实际的磁盘分区作为硬盘而不是仅仅一个.vhd文件。

答案1

我已经使用完成了该设置http://www.virtualbox.org,手册上有描述,命令如下:(请阅读文档!!)

VBoxManage 内部命令 createrawvmdk -filename linux.vmdk -rawdisk \\.\PhysicalDrive0 -partitions 7,8
  • 该命令在您的硬盘上创建 linux.vmdk 和 linux-pt.vmdk 文件,您可以在虚拟机设置中将这些文件用作“虚拟磁盘”。

  • 此命令将虚拟磁盘的访问限制为硬盘的某些分区,以防止损坏,请相应地调整分区号。

  • 在 Windows 7 中,必须以“管理员身份”运行 Virtualbox 才能正确访问 linux 分区。

  • 第一次运行虚拟机时,Ubuntu 应该能够检测虚拟机中的硬件并重新配置自身。

  • 您可能需要在虚拟磁盘的 MBR 中再次安装 GRUB(这与硬盘 MBR 不同)

  • 不要尝试在 Ubuntu 下安装 Windows 数据分区,这肯定会损坏分区,但如果您需要访问数据,请配置网络并将分区安装为 samba 共享。


以下是VBoxManage打印的帮助信息:

用法:VBoxManage 内部命令 [命令参数]

---剪辑---

  createrawvmdk-文件名-rawdisk
                [-分区 [-mbr ] ]
                [-相对的]
       创建一个新的 VMDK 映像,以便访问整个主机磁盘(如果
       未指定参数 -partitions) 或
       主机磁盘。如果授予对各个分区的访问权限,则
       参数 -mbr 可用于指定要使用的备用 MBR
       (MBR文件中的分区信息被忽略)。
       磁盘名称在 Linux 上为 /dev/sda,在 Windows 上为
       \\.\PhysicalDrive0)。
       在 Linux 或 FreeBSD 主机上,参数 -relative 导致 VMDK 文件
       创建的分区指的是单个分区,而不是整个分区
       磁盘。
       可以使用以下命令查询必要的分区号
         VBoxManage 内部命令列表分区

答案2

手册似乎表明这是可能的,尽管是实验性的(请备份!): http://www.virtualbox.org/manual/ch09.html#idp13647760

然而我自己从未尝试过。

答案3

jhcaiced 答案的扩展:

如果您在“-partitions”参数中包含了数据分区,则 vbox 将在启动虚拟机时获得对它的独占访问权限,因此您实际上无法通过 Windows 主机的并发访问来破坏其上的数据。

但是,出于兼容性原因,您最好将该分区留给 Windows,并通过 vbox 共享文件夹或 Windows 文件共享访问它。您可以修改 /etc/fstab 以在启动时自动将共享安装到同一位置。(首先安装客户机附加组件。)

取消链接 Windows,默认的 Linux 内核可以轻松在多种硬件配置下工作,但您的 X(显示)配置可能不行。懒惰的解决方案不需要配置,就是保持真实显卡的驱动程序处于激活状态。当您在虚拟机中使用 Ubuntu 时,您将切换到运行良好的后备驱动程序。

答案4

我认为这是不可能的。Virtual Box 系统使用虚拟硬件来运行虚拟化系统。您的设置将操作系统安装在“真实”硬件上,这完全不同。

如果您希望在硬件上同时运行两个操作系统,那么您将需要一个虚拟化管理程序框架,例如 Xen,它将管理两个操作系统和硬件并允许半同时与系统交互。

更新:回答你好:

是的,它是 Windows。他正在运行一台装有 Windows 7 和 Ubuntu 11.10 的双启动机器。在他的场景中,他已启动到 Windows 并试图将他的 Ubuntu 负载加载到虚拟化框架中。现在请删除您的反对票。

相关内容