インストールの方法 (Chameleon編)

Chameleonを使ってインストールする方法

現在(2012年9月)、Chameleonやその派生のChimeraを使ってブートさせて、市販のMac OS Xを起動させる方式が一般的になっています。Chameleonと必要な設定ファイルのインストールを容易にするために、以下のような様々なインストーラが有志の手で作られて配布されています。

これらを使えば容易ですが、実際に何をやっているのか理解しづらい点もあります。そこで、このページでは、ひたすら手作業で、Chameleonをインストールして、OSX86を起動するまでの手順を書いておきます。なお、ここでの手順はMountain Lion 10.8で動作確認しています。

step 1. 本物Macintoshで起動するドライブを作る

本物のMacintoshに接続したら起動出来るようなHDDなどのドライブを作ります。 いわゆる、OSのクリーンインストールです。作り方はいろいろあるかと思います。 以下に3通り紹介しておきます。

  • 本物のMacintoshがあれば、これをoptionキー押しながら起動して、Recovery用ボリューム(復旧-10.8)選択して、ネット経由でOS Xを入手して、HDDなどにインストールしても良いです。
  • もしくは、Mac App Storeで購入したOS Xのアップデータから起動インストールディスクを作って、これを本物のMacintoshで起動して、HDDなどにインストールしても良いです。
    • "OS X Mountain Lion インストール"などからInstallESD.dmgを取り出してDisk UtilityでUSBメモリなどに復元します
    • dmgから復元するよりいったんマウントしてから復元したほうが成功するらしいです
  • また、上で紹介したTonymac, Kakewalk, Hackinstallerなどのツールを使うと、AT互換機で起動してOS XをインストールするUSBメモリなどを作れますので、これを使ってHDDなどにインストールしても良いです。

こうして、対象のドライブに、GUID方式のパーティションを作成し、これをMac OS 拡張(ジャーナリング)でフォーマットします。そしてこれに、OS Xインストーラを使って、新規にOSをインストールします。このドライブを、本物のMacintoshや、上記のツールなどで起動できたら、ログインするためのアカウントも作っておきましょう。

step 2. ブートローダーをインストールする

上記のドライブは、本物のMacintoshでは起動しますが、AT互換機ではまだ起動しません。 そこで起動するために必要なブートローダ(ここではChameleon) をインストールします。

簡単に行うには、本物のMacintoshで上記のドライブを起動するか、上記のドライブを接続します。 そしてChameleonのインストーラを立ち上げて起動に必要なファイルをインストールします。(これでstep 2は終わりです)

一方、このインストーラがやる手順を手作業で行う事もできます。以下ではその手順を説明します。

まず、上記のドライブを、すでに稼働しているMac OS Xマシンに接続します。 このとき、USB接続などのリムーバブルなドライブとして接続すると、OS Xが自動的にファイルとディレクトリの所有者情報を置き換えてしまいます。(ログインしているユーザの所有物になって自由に操作出来るようになる。)本来の所有者と権限が見られるよう、ファインダでドライブの情報を見て、その最後にある「このボリューム上の所有権を無視」というチェックマークを外しておきましょう。

接続したたら、このドライブと作成したパーティションのデバイスファイル名を、 diskutil listコマンドで調べておきます。 (以下の例はdisk0, disk0s2の場合)

これに、Chameleon をインストールします。Chameleonのサイトなどから入手したChameleonバイナリーのi386ディレクトリのファイルのうち、

  1. boot0 をドライブのMBRにコピーする
     sudo fdisk -f boot0 -u -y /dev/rdisk0
    
  2. boot1h をパーティションのブートセクターにコピーする
     sudo dd if=boot1h of=/dev/rdisk0s2
    
  3. boot をパーティションのルートにコピーする
    sudo cp boot /Volumes/XXX/.
    (XXXはパーティションに付けた名前)
    

step 3. カーネル拡張ファイルkextをインストールする

さまざまなkextを試行錯誤してインストールすることになります。 (Hackinstallerやtonymacのインストーラには必要な様々なkextが含まれています) 現時点で、必ず追加しないと駄目と言われている唯一のkextは、

  • FakeSMC.kext だけです。ただ、OS X標準の以下の2つのkextには、パッチを当てる必要があります。 パッチを当てないと起動時にカーネルパニックしたり、再起動でBIOS設定がクリアされたりします。 すでにパッチが当てられたバージョンや、パッチが不要だったころの古いkextも入手可能ですので、 これをインストールします。(冒頭で紹介したツールにも含まれています)
  • AppleHDA.kext
  • AppleRTC.kext

FakeSMC.kextのインストールを例に、kextのインストール方法を以下に説明します。

  1. System/Library/Extensionsにコピーする
    sudo cp -R FakeSMC.kext /Volume/XXX/System/Library/Extensions/.
    
  2. パーミションを直す
    sudo chown -R 0:0 /Volumes/XXX/System/Library/Extensions/FakeSMC.kext
    sudo chomod -R 755 /Volumes/XXX/System/Library/Extensions/FakeSMC.kext
    
  3. 以下の2つのファイルがあれば削除しておく(高速起動のためのキャッシュファイル。無けれ作り直される)
    /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にコピーして、バックアップしておくと良いかもしれません。

このほか、

  • LANを機能させるためのkext ( IONetworkingFamily.kext など)
  • オーディオを機能させるためのkext ( Legacy889HDA.kext など) が必要になります。マザーボードやグラフィックボードによって事情が異なります。

Step 4. /Extraフォルダを作って中身を用意する

起動したときに、/Extraとなるフォルダを用意します。 このなかに、

  • org.chameleon.Boot.plist
  • smbios.plist の二つの設定ファイルを作っていれます。サンプルはいろいろあります。 以後は、この内容を試行錯誤して調整することになります。

また、マザーボードに合ったDSDTファイルがあれば(tonymacのサイトなどで入手出来ます)

  • DSDT.aml に改名して、/Extraに入れておきます。 なお、最近のUEFI対応の(非BIOSの)Gigabyteのマザーボードでは、DSDTファイルは不要なようです。

以上で、 (kextと/Extraの中身が正しく調整されていれば)めでたく起動するはずです。

おまけ:org.chameleon.Boot.plistとsmbios.plistの例

  • org.chameleon.Boot.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>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>
  • smbios.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>
+ タグ編集
  • タグ:
  • chameleon osx86 install
最終更新:2013年08月10日 22:58
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。
添付ファイル