我正在尝试使用 VMware Player 的物理分区功能在 Windows 7 上的物理分区上运行虚拟化 Ubuntu 环境,该功能会创建一个指向物理磁盘的 .vmdk 文件。Windows 7 和 Ubuntu 位于同一物理驱动器的不同分区上。当我将 VMware Player 设置为允许 VM 访问整个物理磁盘时,一切正常,但这相当危险,因为分区可能会意外地同时安装在主机和客户机上。
当我将 VMware Player 设置为仅允许访问我的 Ubuntu 分区时,虚拟机在初始 Grub 屏幕之前崩溃,并显示错误消息“虚拟 CPU 已进入关机状态...”。当我使用单个分区创建虚拟磁盘但手动选择所有可用分区时,结果是一样的(仍然崩溃)。
在使用整个磁盘与单个分区创建 .vmdk 时,VMware Player 有何不同?这会导致这种行为吗?有什么简单的解决方法吗?
答案1
我也遇到了同样的问题。
我解决这个问题的步骤是
下载 boot-repair.iso http://sourceforge.net/projects/boot-repair-cd/files/
将虚拟机设置为使用 boot-repair.iso
启动虚拟机,在 VMware“BIOS”屏幕仍然可见时按 F2
它不会运行很长时间,所以你必须快速行动(记住先单击窗口以将鼠标和键盘输入传递给虚拟机)
按照 boot-repair.iso 给出的说明操作,就可以了。对我来说,这个方法很管用。
答案2
我遇到了完全相同的问题,并尝试在 Ubuntu 和 VMware 论坛上发帖,但都有很多浏览量,没有回复。我认为问题是由于无法访问 MBR 引起的,因为它只能查看单个分区。经过一番尝试,我终于让它工作了。我的解决方案并不优雅,浪费了几 GB 的空间,但对于大多数现代硬盘来说,这应该不是问题。
解决方案:
向虚拟机添加第二块硬盘
- 转到“编辑虚拟机设置”
- 选择“添加”,然后选择“硬盘”
- 选择“创建新虚拟磁盘”并根据需要进行配置,使其足够大以安装 Ubuntu
在 CD 驱动器中装入 Ubuntu 安装 CD,并将 VM 配置为在启动时连接到驱动器(或配置为使用 ISO)
启动虚拟机,在 VMware“BIOS”屏幕仍然可见时按 F2
- 它不会运行很长时间,所以你必须快速行动(记住先单击窗口以将鼠标和键盘输入传递给虚拟机)
配置 VMware 启动选项为先从 CD 启动,然后从硬盘启动
- 扩展硬盘并将 SCSI 设备(新的虚拟磁盘)移到 IDE 设备(物理分区)前面
保存更改并退出
从 CD 启动并将 Ubuntu 安装到新的虚拟磁盘
- 重要提示:当 Ubuntu 询问您想要做什么时,请选择“其他”,以便您可以自己配置分区。
- 选择与新虚拟磁盘相对应的设备(在我的情况下是 /dev/sdb)
- 在安装 GRUB 的位置下拉菜单中,确保选择与安装 Ubuntu 相同的设备(再次强调,在我的情况下是 /dev/sdb)
完成安装。
现在您应该能够取出 CD 并成功启动 VM。
- Grub 启动屏幕应显示新安装的 Linux 以及安装在物理驱动器上的 Linux。
选择物理驱动器上安装的 Linux,就可以了。
正如我所说,这不是最优雅的解决方案,会浪费在虚拟磁盘上安装 Ubuntu 所需的空间。我相信,更多地研究 GRUB 安装/配置和整体分区方案可以消除这种需要。但是,我已经让它工作了,并打算保持原样,直到我有其他原因需要重新做一遍。