如何在现代硬件上虚拟化Intel版本的Mac OS X Tiger

前言

2006 年,苹果开始给 Macintosh 计算机更换 Intel 处理器,与此同时,系统软件也需要更新为 x86 版本。于是从 10.4.4 起,Mac OS X Tiger 便正式开始支持 x86 架构的处理器。但这些 Tiger 版本对于现代 x86 处理器的 CPUID 的解析存在问题,导致在启动内核时直接崩溃,使现代硬件上虚拟化 Intel 版本的 Mac OS X Tiger 作为怀旧变得困难。这里笔者就向 IT 之家家友分享一个变通方法。

所需工具

  •  VirtualBox(Windows、Mac、Linux 版本均可)

  •  虚拟机的 OVF 文件(天翼网盘链接)

  •  一个 x86 版本或通用二进制版本的 Mac OS X Tiger 安装盘(可以在 macintoshgarden.org 里下载)

操作步骤

1. 下载 OVF 文件,打开 VirtualBox,在管理菜单下选择导入虚拟电脑。

2. 在弹出窗口中,文件选择你下载的 OVF 文件,并点击下一步

3. 在弹出界面选择导入,完成导入。

此时对于 Mac 来说,只需在光驱内挂载安装盘即可开始安装步骤。

但对于 Windows 和 Linux 系统,需要输入如下命令后再挂载安装盘开始安装,本文中的<vmname>指虚拟机的名称:

VBoxManage setextradata “<vmname>” "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata “<vmname>” "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"
VBoxManage setextradata “<vmname>” "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontstealc)AppleComputerInc"

因为 VirtualBox 会将部分主机硬件信息同步到虚拟机中(Windows/Linux的机器没有SMC硬件),导致 Tiger 启动时出现频繁的 exited abnormally 的错误信息,无法进入系统。运行这些命令可以修改虚拟机的硬件信息,让 Mac OS X Tiger 认为这是真正的苹果电脑,从而正常启动。

4. 启动虚拟机,启动之后,屏幕上会跑代码,过一段时间后就会进入安装界面。

5. 进入安装界面后,选择一个语言,然后单击箭头。

6. 在进入安装程序后,选择实用工具 – 磁盘工具,抹掉磁盘。

7. 抹掉磁盘后,退出磁盘工具,一路按下一步继续安装。

8. 安装完成后重启,在 OOBE 阶段配置账户、注册,即可完成安装。

完成:

常见问题

一、进入安装程序时提示 “这台电脑不受支持”。

绝大多数的 Tiger x86 都是恢复盘(除了 Server 10.4.7),都是限定机型的。

解决方法:

1.  修改 System——Installation——Packages——OSInstall.mpkg——Contents——OSInstall.dist 里的

var hwbeSupportedMachines

的值为 VirtualBox。

2.  或者执行以下命令:

VBoxManage setextradata “<vmname>” "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" “< 型号标识符 >”

PS:型号标识符根据恢复盘所对应的机器型号决定,比如 MBP 2007 的恢复盘,型号标识符就写 MacBookPro3,1。

二、 进入磁盘工具后,找不到硬盘。

解决方法:

在选择语言后,应立刻进入磁盘工具抹掉硬盘,否则可能找不到硬盘。

如果确实找不到硬盘,关机,将硬盘的控制器型号改成 ICH6 再启动虚拟机。

三、启动安装盘时出现 still waiting for the root device 错误。

解决方法:将光驱挂在 ICH6 控制器上。

四、启动安装盘时,卡在某处不动。

解决方法:把操作系统类型从 Mac OS X64-bit) 改成 Mac OS X32-bit) 试试。(我电脑是 AMD 处理器的,一开始用

Mac OS X64-bit) 启动安装盘卡住,改成 Mac OS X 32-bit) 后可以进入语言选择界面了)。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注