Snow Leopard安装教程
虽然Snow Leopard(雪豹)操作系统规定只能安装在苹果计算机上,但如果在某些地方绕个弯子还是可以安装在普通的计算机上,不过这样做可能会面临苹果公司的盗版起诉。本文思齐将介绍一下如何安装Snow Leopard操作系统,当然本文仅限学习和研究之用,大家若喜欢,请通过正规渠道使用!
安装Snow Leopard操作系统,机子的CPU最好是Intel的,虽然近些版本对AMD的已经比较友好了,但是使用Intel的安装成功率要高的多。早前在网上看到一篇介绍Snow Leopard安装到Intel兼容机上的英文文章,写的很完整,所以在这翻译一下以供大家学习:
一、简介
希望大家能够深入理解本安装向导的内容,而不是按照本文的描述内容按部就班。很可能在实际操作中您更喜欢按照自己的安装步骤进行,但在自己毫无目的的调整之前或许你还必须让其在第一次能工作起来。所以我尽量提供必须的信息,指出您可能面临的问题并希望你能理解达到目标之前理解所有的步骤。
苹果操作系统的初衷就是安装运行在苹果生产的计算机上的,跟其它普通的计算机本质上没有多大差别,尽管如此,苹果系统也并非能兼容任何非苹果计算机。我个人推荐使用兼容苹果的部件而不是一些杂牌货,因为它们往往会让事情更麻烦。要想让苹果系统在非兼容或根本不支持部件上正常工作需要做更多的工作。
关于本向导,如各位有意联系我,请发EMAIL到solar@heliacal.net,我叫Laszlo。
二、系统需求
以下清单是理想的配置需求,当然如果您理解其意亦可适当替换某些部件。
■Intel 酷睿双核/Quad or i7 处理器
■主板SATA支持AHCI,并且BIOS中也需要设置成AHCI模式,INTEL芯片组最好,技嘉Gigabyte、微星MSI、华硕ASUS甚至是INTEL自家主板最好
■硬盘为SATA或USB的
■USB的键盘/鼠标
■当前主流的NVidia或 ATI显卡
三、安装
最简单的安装方法是使用你现有的操作系统(译者注:指MAC系统)。最理想的是你有现成的基于INTEL的MAC电脑,并且Snow Leopard正常使用。那么安装就相当简单,只需要启动系统系统,连接目标驱动器,使用OSInstall.mpkg进行安装即可。网上也有很多现成的安装教程可供参考,简要归结如下:
1、连接目标驱动器。
2、使用磁盘工具软件进行分区,分区格式是GPT。但特别要注意:在桌面上右键新卷图标,选择属性,点击那个右下角的小锁图标进行授权并取消“忽略本卷上的所有权”核选框。如果不设置这里在安装完之后,权限问题将会一团糟。
3、确认新卷的根目录为root用户所有。
4、加载MAC OS X Snow Leopard DVD光驱或其镜像。
5、在终端模式下执行:open /Volumes/Mac\ OS\ X\ Install\ DVD/System/Installation/Packages/OSInstall.mpkg
假如你没现成的可用Snow Leopard系统来执行上述命令,你也可以使用Leopard,但我在Leopard下遇到过安装失败的问题,但我仍然认为经过一些尝试是可以的。
6、在MAC OS X Snow Leopard安装完成后,再安装Chameleon。如果你是在Leopard下安装的,可能会在安装结束时候提示一个错误,但我认为安装是OK的。你可以参考Chameleon的安装手册:http://chameleon.osx86.hu。
Chameleon默认会创建/Extra/Extensions并安装一些kext,如不需要的话可以删掉它,然后添加自己的kext。
注意:请确认你是在/Volumes/Snow/Extra下执行操作,而非系统的/Extra下。
7、拷贝DSDT.aml到目标盘的根目录下。当然也可以放到/Extra下面,Chameleon都可以读取。
8、把smbios.plist放到/Extra目录下,并可以根据自己的喜好编辑它。
9、编辑PlatformUUID.kext里的Info.plist的UUID。确保与smbios.plist文件中的UUID相同。你可以生成一个新的UUID。如果不清楚如何生成可以Google搜索一下。
10、拷贝/Library/Preferences/SystemConfiguration/com.apple.Boot.plist到/Extra下面,如果需要也可以编辑一下,比如增加超时时间等等。
11、编辑/Extra/com.apple.Boot.plist,增加自己的EFI字符串,下面是我的EFI字符串示例:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Kernel</key> <string>mach_kernel</string> <key>Kernel Flags</key> <string></string> <key>device-properties</key> <string>b20200000100000001000000a60200001000000002010c00d041030a010000000101060000010 101060000007fff04000e0000004e00560050004d00000020000000010000000000000000000000000000000 0000000000000000000000024000000400030002c00630061006e002d0068006f0074002d0070006c007500 6700000004000000220000004100410050004c002c0067007200610079002d007000610067006500000008 000000010000001c0000006400650076006900630065005f00740079007000650000000f0000004e5644412 c506172656e740e0000006e0061006d00650000000b000000646973706c617922000000400030002c006400 650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f0064006 5006c000000130000004765466f726365203739353020475422000000400031002c00640065007600690063 0065005f00740079007000650000000b000000646973706c617920000000400031002c0063006f006d00700 061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d 0065000000120000004e5644412c446973706c61792d4114000000400031002c006e0061006d00650000001 20000004e5644412c446973706c61792d421200000049004f004e0061006d00650000000b00000064697370 6c617920000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412 c4e564d616324000000400031002c00630061006e002d0068006f0074002d0070006c007500670000000400 0000100000004e00560043004100500000001800000004000000000003000c00000000000007000000001e 00000072006f006d002d007200650076006900730069006f006e0000000e0000004746582d535452494e47</string> </dict> </plist>
12、在重启系统之前,最好关掉节能休眠模式,不关掉可能对很多机子来说会有问题,比如休眠之后叫不醒等。
13、注意:即使设置了目标驱动器不要忽略权限,这样安装似乎仍有问题,所以在第一次重启之前还需要进行一些准备工作,非常重要,请不要跳过本步。
A、单用户模式下启动,在Chameleon界面下选择分区并输入-s
B、重新加载根文件系统读写属性:(mount -uw /)
C、删除扩展文件Extensions.mkext:(rm -f /System/Library/Extensions.mkext)
D、设置根目录、Extensions、AdditionalExtensions目录权限,并重建mkext缓存文件
四、启动Mac系统
在你的非苹果计算机上要成功启动MAC系统前,还有几项挑战需要克服。
1、苹果计算机是基于EFI启动模式的,而普通的PC机是基于BIOS系统的。这意味着你不能直接插入安装盘并启动安装。
2、你的机子可能有些硬件在MAC系统上没有驱动。也有些硬件使用与MAC系统不同的设备号。
3、MAC系统还有一些内建的保护措施,以防止MAC运行在非苹果机上。完成启动必须的几个文件都是经过加密的。苹果电脑内部有个SMC组件专门存储解密程序的密码。非苹果计算机是没有SMC,也没有密码。因此如果没有一些辅助措施启动程序是无法解密的,更无从谈让PC机完成启动。这就是你需要”解密“kext(比如dsmos,r3d3或AppleDecrypt)的原因。
五、文件
提到的所有文件都可以在我的WEB目录下找到:http://heliacal.net/~solar/mac/。
你可以从BT站点上下载到Snow Leopard(文件太大了没办法放到我的站点上)。截至写作之时最新的版本位GM(Gold Master) Build 10A432。
本站下载地址:Snow Leopard 10.6桌面版、服务器版下载。
六、关于DSDT
第一个挑战就是启动。为了能够成功启动你需要一个Bootloader,比如PC EFI V9或Chameleon 2.0 RC1。我的计算机在Leopard(10.5)上运行很好,但直到我创建DSDT路径之前,我都无法让它在10.6上成功启动。
DSDT是ACPI组件的一部分。就像一个程序告诉操作系统本台计算机有哪些硬件和进入方法。
但这也并非操作系统发现硬件的唯一方法,但苹果MAC系统希望普通的设备遵从普通的工作方式。不同厂家生产的计算机或配件肯定导致PC市场的巨大差异性,但苹果早期只生产4-5种计算机,所以没有为每种差异写一个独立的设备号。
总之,你需要修正你的DSDT。值得欣喜的是,这个伟大的bootloader不但为我们仿真EFI,还允许通过创建一个补丁文件来控制DSDT,这个补丁文件要放到Bootloader能找到的位置。Bootloader会用我们在执行操作系统前提供的DSDT表替换内存DSDT表。因此我们有个调整的机会,让一切看起来符合MAC系统的要求。
你需要的第一个工具就是DSDT补丁,看这个帖子或到Google自己找也可以。
这个补丁包括iasl,iasl用来编译和反编译DSDT。此外还包含一个用来自动修复的小工具。在良好的开始前你还需要熟悉操作流程,下一步该做什么、如何手工反编译、如何手工编译,假如你想深入调整的话。
我发现的另一个工具是ACPI补丁,请看这个帖子了解更多内容。
你需要采用一些方式启动进入Leopard后才能使用这些工具,但是假如你很聪明的话,你也可以通过其它方式获得DSDT,比如Linux,Windows下等。
在把DSDT应用到Snow Leopard之前,使用Leopard来测试一下DSDT是个很好的方式。假如你的机子本身是兼容MAC系统的话,很多问题可以通过DSDT修复来解决。
我就是通过编辑DSDT而没有修改kext解决我的主板上的声卡问题的。
这是我的DSDT编译文件:EP45T-UD3P-DSDT.aml,这是反编译文件:EP45T-UD3P-DSDT.dsl
提示:反编译.aml文件,使用如下命令:iasl -d /Path/DSDT.aml;要从.dsl编译.aml文件,使用如下命令:iasl -ta /Path/DSDT.dsl
值得注意是HDEF(在dsl文件中搜索可以看到)让我的AppleHD在无任何修改和HPET下就工作的很好。HPET是让AppleIntelCPUPowerManagement.kext加载而不会导致内核致命(仍然倾向于阻止,稍后在做详细介绍)。——译者注:这里翻译感觉有点问题,呵呵,大家如果不明白可看下下文的原文链接。
七、bios安装
以下是我的主板操作流程,对其它主板类似参考。
注意:现在每次我启动Snow Leopard,我都会丢失BIOS设置信息,很是烦人。有一个方法可以避免,就是在BIOS中保存自己的设置(F11),且在每次重启后返回BIOS并且使用F12快捷键加载。
更新:CMOS复位修复,非常感谢Stellarola. 让你的RTC设备在你的DSDT中像这样,应该叫RTC0,没问题。....
Device (RTC) { Name (_HID, EisaId ("PNP0B00")) Name (_CRS, ResourceTemplate() { IO (Decode16, 0x0070, 0x0070, 0x00, 0x02) }) }
我有6个从INTEL ICH10出来的黄颜色的SATA端口和几个紫色SATA端口和IDE端口,都是技嘉增加的(我想肯定是JMicron,译者注:JMicron是台湾的一个专注串行ATA研发IC公司)。你需要在BIOS中关闭板载控制器,就会让紫色SATA端口和IDE端口无效。
1、确保SATA模式已经设置成AHCI模式,而非RAID或IDE
2、打开HPET并且设置位64位模式(在电源管理设置里)
3、UART串口和并口关掉DISABLE
4、设置板载Azalia音效位自动AUTO
5、设置技嘉网络端口有效
6、设置火线/USB2.0有效
八、32位、64位内核
我还是推荐使用32位的Snow Leopard内核,尽管64位内核看起来比较有意思,但32位的内核会提供更好的兼容性,特别是现在很多程序都是为Tiger/Leopard编译的。
即使不考虑内核类型外,你仍然可以执行64位程序,并且Snow Leopard中还很多64位的进程在运行。
netkas就此有过很好的解释,你可以访问他的博客获取更多信息。
九、不要偷装Mac操作系统*—*
在/System/Library/Extensions下面有个Dont_Steal_Mac_OS_X.kext文件,是苹果起的雷人名字,这个文件主要用来解密任何加密程序。是苹果用来防止用户安装MAC操作系统到普通PC机上的一个很简单的保护方案。
kext的工作原理是:从SMC (System Management Controller)里读取密码,并用来对已载入程序的内存页进行解密。非苹果电脑是没有SMC的,因此也无法完成启动Mac OS。内核会一直处于等待状态,也无法进入桌面,但是如果进入单用户模式则是可行的。
随着Snow Leopard 10a421发布,这个加密机制发生了变化,老版本的解密kext失去了作用。Netkas发布了一个新版本的kext,支持Snow Leopard 10A421和 10A432(GM)版,你可以从本站或作者的网站获取它。
十、启动加载
我推荐使用Chameleon作为引导工具,你可以从官网上下载到,或者直接从这里下载:http://heliacal.net/~solar/mac/Chameleon-2.0-RC2-r640.pkg
Chameleon默认是从64位模式启动内核,你可以通过在启动时输入启动参数 -x32来强制使用32位的内核,当然也可在com.apple.Boot.plist设定启动模式。
十一、其它
dsmos.kext_for_snow_64_10a432.tar:编译反编译二进制文件必须。
NullCPUPowerManagement.kext_for_snow_64.tar:attaches in place of the real AppleIntelCPUPowerManagement which doesn't work right on PCs (kernel panic, cpu running hot)。
OpenHaltRestart.kext_for_snow_64.tar:非常简单的kext,可以使电脑重新启动和关闭工作。
PlatformUUID.kext_for_snow_64.tar:设置平台的UUID,让你有从一开始启动..一个统一的UUID此UUID是用在您的首选项文件(在其他东西),我认为这是很重要的一个干净的安装有这从第一次启动的权利。
以上文章内容是翻译一篇国外文章,原文地址:http://heliacal.net/pmwiki/Main/SnowLeopardInstallationGuide2,同时涉及另一个老版本雪豹Snow Leopard的安装向导文章:http://heliacal.net/pmwiki/Main/SnowLeopardInstallationGuide。
附:Snow Leopard视频安装教程
补充:虽然Snow Leopard可以安装在普通计算机上,但是毕竟与苹果生产的计算机有不同之处,安装后可能会出现无画面、无声音、没网卡驱动等驱动问题,且有些特殊驱动问题很难解决,希望大家在决定安装前慎重考虑!
特此声明:本文仅供学习和研究之用,严禁用于商业用途,如果喜欢请通过正常渠道使用!
注明:本文内容转载自天缘博客。
转载请注明:转载自 思齐博客 及本文链接地址:http://www.siqiboke.com/post/69.html

貌似配置有那么一点高啊
额 对了 我是海天 这段时间可能要用这个名字 具体原因到我博客看吧 还需要你们帮忙呢
过年的时候在pc机上试着安装,没有成功哦。改天再试试去,先收藏了。
不错中的不错