如何将我的 Boot Camp 分区转换为 VMDK 文件?

如何将我的 Boot Camp 分区转换为 VMDK 文件?

我正在寻找一种巧妙的方法,在我的 MacBook Pro 的 Boot Camp 分区上升级到 Windows 64 位。这是我制定的计划(考虑到你不能直接将 Win32 升级到 Win64):

  1. 将 Boot Camp 分区移动到 VMDK 文件;
  2. 使用全新安装的 Windows 7 64 位覆盖 Boot Camp 分区;
  3. 重新安装程序和不可转移的内容;
  4. 在 Mac OS 上,在 VMWare Fusion 虚拟机中同时运行 Win7 32 位和 Win7 64 位,并使用 Windows 轻松传送。

这里唯一的问题是我不知道如何将物理分区转换为 VMDK 文件。我的驱动器上有足够的空间,即使没有丝毫压缩,我也不知道该怎么做。

我偶然发现实时显示,它可以将原始图像(dd样式)转换为 VMDK。(它没有 Mac OS 版本,但由于它是 Java,我认为无论如何我都可以运行它。)但是,在支持的操作系统列表中没有明确提到 Windows 7。

答案1

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1015088

这是最简单的方法。

  1. 启动 Fusion。
  2. 在 Fusion 的菜单栏中,单击窗口 > 虚拟机库。
  3. 按住 Ctrl 键并单击左栏中的 Boot Camp 图标。
  4. 单击“导入”。
  5. 输入管理员用户名和密码,然后单击“确定”。对于 Fusion 3.x,选择保存新虚拟机的位置(默认位置是名为“虚拟机”的文件夹,位于“文档”文件夹内),然后单击“保存”。

    对于 Fusion 1.x 和 2.x,当导入助手启动时,单击“导入”。

  6. 导入完成后,新创建的虚拟机就会出现在虚拟机库窗口中。

注意:导入过程完成所需的时间取决于 Boot Camp 分区的大小。

答案2

如果你进入 Windows,你可以使用免费的VMWare 转换器实用程序

我没有使用过 VMWare fusion,但我确实经常使用 VMWare Workstation,而且它运行良好,所以我猜想它对于 fusion 应该也能起到同样的作用!

答案3

我实际上找到了一种更简单的命令行方式,然后它让我意识到有一个简单的 GUI 方式。

VMWare Fusion 的文件夹中附带了一堆 CLI 实用程序Contents/MacOS。该diskCreate工具可用于将现有vmdk文件(包括vmdk引用实际驱动器或分区的文件)克隆到新文件上。卸载我的 Boot Camp 分区(通过磁盘实用程序)并使用以下命令:

sudo "/Applications/VMWare Fusion.app/Contents/MacOS/diskCreate" \
     -A onDemandAlloc -C "Boot Camp.vmdk" ~/Desktop/win7-32.vmdk
sudo chown $USER ~/Desktop/win7-32.vmdk

(“Boot Camp.vmdk” 位于~/Library/Application Support/VMware Fusion/Virtual Machines/Boot Camp/Boot Camp.vmwarevm/

我能够将 Boot Camp 分区克隆为可用vmdk文件。请注意,这个过程大约需要一个半小时(对于一个 120 GB 的分区,其中大约有 80 GB 的实际数据),在此期间磁盘 IO(显然)已饱和,导致我的系统速度明显变慢。

不过,在创建新虚拟机时,我意识到有一个图形用户界面可以做同样的事情。如果您不使用安装盘创建虚拟机,则可以选择现有文件vmdk,然后选择复制它。虽然我没有这样做,但这种复制方式vmdk似乎会产生与相同的结果diskCreate

答案4

我没有使用 Boot Camp,而是安装到原始分区并使用 reFIT 进行启动。为了从分区中提取数据,我使用了命令行:

/Applications/VMware\ Fusion.app/Contents/Library/vmware-vdiskmanager -r path/to/rawdisk-file.vmdk -t 0 path/to/virtualdisk-file.vmdk

相关内容