由于工作需要,我需要同时使用Windows和Mac OS X操作系统,虽然公司可以配置两台机器,但是出于发热量,空间占用,操作系统互通等原因,我还是更倾向于在虚拟机环境里工作。由于在大部分工作还是在Windows上完成的,因此我选择Win 7作为Host,而将Mac OS X Snow Leopard作为Guest系统。由于各种原因(如严格和特殊的硬件需求),在虚拟机下安装OS X一直是件无比折腾的事情,留下了无数先驱的身影。但是,我忽然发现,似乎如今新版的VirtualBox对于OS X已经有了非常优秀的支持,尝试之后感觉大好,因此记录下来供需要的朋友参考。
首先,我建议您准备一台配置充足的机器作为Host。以下是我的机器配置及操作系统:
我的机器一开始只有2G内存,OS X虚拟机占用了整整1G,于是剩下的1G内存便显得捉襟见肘了。如果您需要打开一些开发工具,或是Visual Studio、Word、Outlook等大型应用程序,会发现内存换页非常频繁,简直难以忍受。不过将内存增加到4G之后,情况便大有好转,与之前相比几乎感觉不到虚拟机所带来的影响。因此,我建议您至少准备3G内存空间,否则接下来的体验会大打折扣。
在装完Snow Leopard系统之后,便会占用超过9G的硬盘空间。如果您需要在上面做开发,则可能还需要安装Xcode及iOS SDK等工具包,它们都是实打实的大个头,一套下来同样会占用将近10G的硬盘,因此我建议您可以保留30G左右的硬盘空间,以免将来遭遇尴尬的境地。
在软件部分,新版的VirtualBox也是必须的,我使用的是最新的3.2.8 r64453,您可以去官网上下载最新版本。自然,您还需要Mac OS X 10.6 Snow Leopard的安装DVD或是镜像文件(不要问我哪儿可以搞到)。此外,由于VirtualBox自带的EFI Bootloader只能在OS X作Host时才能正常引导,我们还需要empireEFIv1085.iso,您可以根据自己的CPU下载32位Intel版本或是AMD版本,对于64位Intel处理器,可以使用压缩包里的legacyempire_efi1085.iso文件。
至此,万事俱备。
VirtualBox和Snow Leopard的中文翻译都可谓是茶几,因此两者我使用的都是英文版本。
首先,您需要创建一个虚拟机的配置,设置一个名称(Snow Leopard),并如下图选择合适的操作系统(Mac OS X)及版本(Mac OS X Server):
选择至少1024 MB内存:
在选择磁盘向导中,创建一个30G大小的虚拟磁盘(如果硬盘空间允许的话,建议创建fixed-size类型的虚拟磁盘,对性能有所帮助。自然,这会在创建虚拟磁盘时消耗一些时间,请耐心等待):
检查信息,创建虚拟机配置:
右键单击刚创建好的虚拟机,或使用Machine菜单进入Settings面板。首先,选择左侧的System项,调整右侧的启动顺序(先光驱再硬盘),并将默认选中的Enable EFI选项取消(我们将使用刚才下载的empireEFIv1085.iso进行引导):
然后选中左侧的Display项,将Video Memory调制最大,并启用3D加速:
至此,虚拟机配置完成。
首先,我们使用empireEFIv1085.iso进行引导,还是在刚才的Settings面板中,选择左侧的Storage项,并在右侧选中引导用的镜像:
启动虚拟机,稍等片刻,直至出现如下界面:
根据提示,加载Snow Leopard的安装盘,稍等片刻(让虚拟机识别并加载镜像),点击F5,此时您会发现中央的光盘标志下方显示为Max OS X的安装盘:
此时回车,并根据提示按任意键,稍等片刻便会出现Snow Leopard的安装向导界面:
选择一门语言,并根据向导前进,直至安装磁盘选择这一步,此时您会发现可选磁盘列表为空:
从上方Utilities菜单中选取Disk Utility,再选中左侧的磁盘,同时进入右侧的Erase栏。然后选择正确的文件系统(Mac OS Extended,Case-sensitive,Journaled):
点击Erase对磁盘进行格式化,关闭Disk Utility,并选择刚才格式化后的磁盘作为安装目标:
点击Install按钮开始安装,请耐心等待:
最后则会出现安装失败的提示画面:
不过别担心,事实上Snow Leopard系统已经安装完成了。此时您可以点击Restart按钮,但系统并不会正常地重新启动,会停留在MACH Reboot字样上。您需要重新加载empireEFIv1085.iso,并手动选择虚拟机控制台中Machine菜单的Reset项强制进行重启(此时虚拟机可能会提示发生严重错误并退出,重新启动即可):
此时便会重新进入之前出现过的引导界面,不过您会发现其中多了一个启动项,便是刚才装好的操作系统:
按键盘右键切换至新项并回车,根据提示按任意键,稍等片刻,便会进入Snow Leopard第一次启动时的语言选择界面:
我在这里还是选择英文作为操作系统的主要语言。根据向导一步一步前进,在设置了键盘,账号,时区等信息后(您可以跳过设置Apple ID的步骤),最终便可以看到Snow Leopard系统的桌面(可能跳出键盘识别的向导,按提示进行即可):
您现在可以把玩一下Snow Leopard操作系统了。值得一提的是,您很有可能无法使用操作系统的菜单正常关闭和重启操作系统,这时候您只要使用虚拟机的菜单来强制关闭和启动即可。需要注意,在启动时您还是需要empireEFIv1085.iso作为引导。
打开System Profiler,会发现当前操作系统的版本是Mac OS X 10.6.3(当然,如果您使用最新的安装光盘,则下个步骤就可以跳过了):
打开Software Update升级操作系统。经过一段时间的检查,会要求进行操作系统升级,这会下载800多兆的升级文件,这自然需要一个漫长的等待过程。升级完成后重新启动,便会发现操作系统已经更新为Mac OS X 10.6.4(您可能发现截图中升级前后的机器名有所不同,这是我手动修改造成的):
容易理解,您从表面上很难发现升级前后有什么差异。
从网上找到的资料来看,调整分辨率的方法有好几种,例如修改com.apple.Boot.plist文件,或是使用VBoxManage.exe修改虚拟机镜像的EfiGopMode参数等等,但我实验下来都没有效果。最终我使用的下面的方法。首先,使用empireEFIv1085.iso引导系统,停留在启动方式选择界面,向右切换至Snow Leopard操作系统,并输入以下命令:
"Graphics Mode"="1280x1024x32"
如下图,请注意图片左下方的命令:
回车,之后Snow Leopard的分辨率便修改成功了。您也可以将1280x1024修改成其他分辨率(并非任意分辨率,系统会自行调整)。我在工作时往往将其设为全屏,并放到扩展桌面上,于是我便可以同时使用两个操作系统了:
看上去还不错吧?
至于其他方面,您可以自行摸索了。网络连接方面,我使用默认的NAT工作正常,USB也没有问题,声音方面需要安装一个驱动程序。此外,我在安装的时候也是遵循几篇文章所提供的向导,如果您想摆脱empireEFIv1085.iso启动系统,也可以根据它们的指引进行尝试:
您现在便可以尝试Mac OS X Snow Leopard操作系统及软件了。当然,这并不能给您带来完整的苹果机的体验,使用苹果机一体化的硬件配合它的操作系统,可以给您带来一些额外的感受,例如苹果笔记本带多点触摸的触摸板,它的使用体验和操作方式都给我留下了非常深刻的印象。