最近需要在iPad上开发一款App,于是尝试在虚拟机中安装OS X 10.9系统进行体验。经过数十次尝试和大量踩坑后,终于找到了在VMware 10上成功安装Mac OS X 10.9的正确方法。这套方案无需U盘,所有操作均在硬盘上完成,运行速度也更快。
开始前,请准备好以下工具和镜像:
VMware-workstation-full-10.0.1-1379776.exe
unlock-all-v130.zip
Install OS X Ma vericks.dmg(大小4.94G)
UltraISO 9.6
解压软件(如7-zip等即可)
工具准备齐全后,我们正式开始操作。
一、安装VMware 10
安装VMware本身并不复杂,建议使用默认安装目录。为什么特别强调这一点?因为后续需要用到的unlock-all-v130补丁会默认识别该路径,否则可能引发错误。
二、安装VMware Mac OS补丁
这个补丁在网上很容易找到。下载解压后,进入unlock-all-v120\windows目录,找到install.cmd文件,右键选择“以管理员身份运行”。执行完成后会有提示信息,表明补丁安装成功。这一步的作用将在后续步骤中详细说明。
三、解压出InstallESD.dmg和BaseSystem.dmg
以7-zip为例,我们来从安装镜像中提取这两个关键文件。
1. 右键单击Install OS X Ma vericks.dmg,选择7-zip → 提取到“Install OS X Ma vericks\”。解压完成后会得到一个文件夹,内容如下图所示。

2. 进入该文件夹,使用7-zip打开名为“5.hfsx”的文件。按照路径“Install OS X Ma vericks\Install OS X Ma vericks.app\Contents\SharedSupport\”找到“InstallESD.dmg”,将其提取出来。注意,这个还不是最终需要的文件。

3. 将提取出的InstallESD.dmg解压到“InstallESD\”文件夹。解压后,文件夹内容如下图所示。

4. 进入InstallMacOSX.pkg文件夹,找到如下界面——这里才是真正的InstallESD.dmg所在位置。存储路径相当隐蔽。

5. 选中该InstallESD.dmg,右键解压到“InstallESD\”。解压后的文件夹内容如下图所示。

6. 用7-zip打开“3.hfs”,里面有一个“OS X Install ESD”目录。进入后即可看到BaseSystem.dmg,立即将其提取出来。

四、将dmg转换为iso格式
下载并安装UltraISO 9.6,注册事宜请自行解决。启动UltraISO,选择菜单“工具 → 格式转换”,输入刚才提取的InstallESD.dmg,输出格式选择“标准ISO”,点击“转换”。稍等片刻,InstallESD.iso便生成完毕。同样操作,将BaseSystem.dmg也转换为iso。
五、创建虚拟机
打开VMware Workstation 10,点击“新建虚拟机”或从文件菜单进入。关键步骤:选择“自定义(高级)”,硬件兼容性保持默认的Workstation 10.0。操作系统选择“稍后安装”,客户机操作系统类型选“Apple Mac OS X(M)”,版本定为Mac OS X 10.9。为什么需要安装第二步的补丁?因为不安装的话,该选项不会出现在下拉列表中。
虚拟机存放位置请选择一个空间充足的分区,OS X 10.9占用空间较大,至少预留25GB。处理器和核心数根据您的机器配置决定,内存建议设为2GB或以下,尤其当主机内存有限时,可避免频繁交换。网络类型选择NAT,I/O控制器选LSI Logic,磁盘类型选SATA,然后创建新虚拟磁盘,容量推荐50GB,并勾选“将虚拟磁盘存储为单个文件”。
Mac OS X不支持软盘驱动器,因此需要在自定义硬件中移除软驱。完成设置后点击完成,虚拟机即创建成功。
六、引导系统
进入虚拟机设置,找到CD/DVD,选择“使用ISO镜像文件”,将之前转换好的BaseSystem.iso挂载上去,并勾选“启动时连接”。然后添加一个CD/DVD驱动器,将InstallESD.iso挂载上去,同样勾选“启动时连接”。
启动虚拟机,系统会自动使用第一个光驱中的BaseSystem.iso进行引导。首次启动速度较慢,屏幕上会出现经典的“转菊花”画面,请耐心等待。

菊花转完后,出现语言选择界面,选择中文,然后进入“OS X 实用工具”页面。


这个实用工具页面功能强大,尤其是其内置的终端。有句话说得好:Where there is a shell, there is a way。

七、给虚拟磁盘分区并安装系统
我们需要创建一个可引导安装系统的分区,8GB容量足够。系统安装完成后,该分区可删除。
1. 打开“磁盘工具”。在左侧选中虚拟硬盘,点击“分区”。

2. 在“分区布局”下拉框中,选择需要的分区数量。这里以分两个区为例:启动分区设为8GB,命名为“START”;主分区设为34GB,命名为“OS X”。点击“应用”,确认分区。

分区完成后的状态:

3. 关闭磁盘工具,回到实用工具页面。从顶部菜单栏打开“终端”。
4. 输入命令“df -h”查看文件系统,会看到类似下方的输出。

5. 进入/Volumes/OS X Install ESD目录:输入“cd /Volumes/OS\ X\ Install\ ESD/”(注意空格)。
6. 输入“ls”确认已进入正确目录。目录内容如下:

7. 挂载BaseSystem.dmg:输入命令“hdiutil attach BaseSystem.dmg”。

8. 点击菜单栏上的“终端”,选择“退出终端”,回到实用工具页面。

9. 再次打开磁盘工具,会看到左侧多了一个名为“OS X Base System”的设备。

10. 将OS X Base System的内容恢复到START分区:选中OS X Base System,点击“恢复”标签,将START分区拖到“目的磁盘”位置,点击“恢复”。系统会提示数据将被抹除,直接点击“抹掉”。

11. 恢复完成后,START分区的名称会发生变化。关闭磁盘工具,再次打开终端。

12. 删除/Volumes/OS X Base System 2/System/Installation/Packages文件:先执行“cd /Volumes/OS\ X\ Base\ System\ 2/System/Installation”进入目录,再执行“rm Packages”删除该文件。

13. 将/Volumes/OS X Install ESD/Packages目录复制到上一步的目录下:执行“cp -r /Volumes/OS\ X\ Install\ ESD/Packages ./”。文件较多,复制过程需要一些时间,请不要误以为死机,耐心等待即可。
14. 复制完成。
15. 通过菜单栏退出终端(不要点击红色按钮),回到实用工具页面。
16. 关闭“OS X 实用工具”,系统会弹出确认对话框。

17. 点击“选取启动磁盘...”,等待几秒后弹出对话框,选择黄色硬盘图标的“OS X Base System OS X, 10.9”,点击“重新启动”。系统会再次确认,果断点击“重新启动”。

18. 重启后继续耐心等待。虚拟机中的OS会再自动重启一次,待菊花转完后,系统配置页面便会出现。

19. 后续操作非常简单,按照系统提示逐步点击即可完成。
额外给有洁癖的用户补充一点:系统全部配置完成后,关闭OS X。在虚拟机设置中移除CD/DVD 2,并将CD/DVD的连接改为“使用物理驱动器”。再次启动系统,打开Launchpad,在“其他”中找到“磁盘工具”,将OS X Base System分区抹掉即可。
