現在(2012年9月)、Chameleonやその派生のChimeraを使ってブートさせて、市販のMac OS Xを起動させる方式が一般的になっています。Chameleonと必要な設定ファイルのインストールを容易にするために、以下のような様々なインストーラが有志の手で作られて配布されています。
これらを使えば容易ですが、実際に何をやっているのか理解しづらい点もあります。そこで、このページでは、ひたすら手作業で、Chameleonをインストールして、OSX86を起動するまでの手順を書いておきます。なお、ここでの手順はMountain Lion 10.8で動作確認しています。
本物のMacintoshに接続したら起動出来るようなHDDなどのドライブを作ります。 いわゆる、OSのクリーンインストールです。作り方はいろいろあるかと思います。 以下に3通り紹介しておきます。
こうして、対象のドライブに、GUID方式のパーティションを作成し、これをMac OS 拡張(ジャーナリング)でフォーマットします。そしてこれに、OS Xインストーラを使って、新規にOSをインストールします。このドライブを、本物のMacintoshや、上記のツールなどで起動できたら、ログインするためのアカウントも作っておきましょう。
上記のドライブは、本物のMacintoshでは起動しますが、AT互換機ではまだ起動しません。 そこで起動するために必要なブートローダ(ここではChameleon) をインストールします。
簡単に行うには、本物のMacintoshで上記のドライブを起動するか、上記のドライブを接続します。
そしてChameleonのインストーラを立ち上げて起動に必要なファイルをインストールします。(これでstep 2は終わりです)
一方、このインストーラがやる手順を手作業で行う事もできます。以下ではその手順を説明します。
まず、上記のドライブを、すでに稼働しているMac OS Xマシンに接続します。
このとき、USB接続などのリムーバブルなドライブとして接続すると、OS Xが自動的にファイルとディレクトリの所有者情報を置き換えてしまいます。(ログインしているユーザの所有物になって自由に操作出来るようになる。)本来の所有者と権限が見られるよう、ファインダでドライブの情報を見て、その最後にある「このボリューム上の所有権を無視」というチェックマークを外しておきましょう。
接続したたら、このドライブと作成したパーティションのデバイスファイル名を、 diskutil listコマンドで調べておきます。 (以下の例はdisk0, disk0s2の場合)
これに、Chameleon をインストールします。Chameleonのサイトなどから入手したChameleonバイナリーのi386ディレクトリのファイルのうち、
sudo fdisk -f boot0 -u -y /dev/rdisk0
sudo dd if=boot1h of=/dev/rdisk0s2
sudo cp boot /Volumes/XXX/. (XXXはパーティションに付けた名前)
さまざまなkextを試行錯誤してインストールすることになります。 (Hackinstallerやtonymacのインストーラには必要な様々なkextが含まれています) 現時点で、必ず追加しないと駄目と言われている唯一のkextは、
FakeSMC.kextのインストールを例に、kextのインストール方法を以下に説明します。
sudo cp -R FakeSMC.kext /Volume/XXX/System/Library/Extensions/.
sudo chown -R 0:0 /Volumes/XXX/System/Library/Extensions/FakeSMC.kext sudo chomod -R 755 /Volumes/XXX/System/Library/Extensions/FakeSMC.kext
/System/Library/Extensions.kextcache /System/Library/Extensions.mkext (起動したときの場所なので、この例では、/Volumes/XXX/System/Library/以下に相当する)
ひきつづき、パッチ済みで配布されているAppleHDA.kextとAppleRTC.kextもインストールします。(もしくはパッチを当てる) 念のためにオリジナルのAppleHDA.kextとAppleRTC.kextをAppleHDA.kext.orgとAppleRTC.kext.orgにコピーして、バックアップしておくと良いかもしれません。
このほか、
起動したときに、/Extraとなるフォルダを用意します。 このなかに、
また、マザーボードに合ったDSDTファイルがあれば(tonymacのサイトなどで入手出来ます)
以上で、 (kextと/Extraの中身が正しく調整されていれば)めでたく起動するはずです。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>EthernetBuiltIn</key> <string>Yes</string> <key>GraphicsEnabler</key> <string>Yes</string> <key>Kernel</key> <string>mach_kernel</string> <key>Kernel Flags</key> <string>arch=x86_64 -v </string> </dict> </plist>
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>SMbiosvendor</key> <string>Apple Inc.</string> <key>SMfamily</key> <string>MacPro</string> <key>SMmanufacturer</key> <string>Apple Inc.</string> <key>SMproductname</key> <string>MacPro5,1</string> <key>SMserial</key> <string>SECRETNUMBER</string> <key>SMsystemversion</key> <string>1.0</string> </dict> </plist>