■2012-03-18
●Mountain Lion Developer Preview 1 (10.8) をインストールする
◆OS XがLion(10.7.0~10.7.3)になってから、「ハッキントッシュのマザーボードはGigabyteにかぎる」という神話は崩れた。マザーボード、メモリー、グラフィックスボードの相性にバラツキが目立つようになった。Snow Leopardではうまくいった組み合わせがそうではなくなったのである。
◆Gigabyteは、別にHackintoshを想定して生産しているマザーボードではなく、依然、Windowsのためのものだが、そのマザーボードが昨年ごろから、Windows OSの使用時にも不具合を起こすようになった。一番深刻なのが、「boot loop」とか「cold loop」と言われる、起動後ブートを無限に繰り返す現象である。これは、メモリーを減らすと治ったりするが、Gigabyeteがある時点でBiosに加えた変更のためのようだ。事実、古いマザーボードでも、Biosを新しくするとこの現象が起きる場合がある。
◆いま多くのマザーボードのBIOSは、EFI (Extensible Firmware Interface)から、さらにはUEFI(Unified Extensible Firmware Interface)への方向に向かっている。Gigabyteは、その点で時流に乗り遅れた。わたしは、BIOS設定画面に見えるそのダサさ加減を愛してきたが、Hackintoshをする場合には、そうはいかない。美学的な好みがどうであれ、動かなくてはどうにもならない。Gigabyteのマザーボードを選ぶ場合も、Hackintoshに向くかどうかを優先してきた。
◆その点で、いまHackintoshに向くマザーボードはASUSである。少なくともLion以後、ASUSのマザーボードを選んで損はしなかった。非常に安いP8H67-M PRO でも問題ない。そこで、今回は、Intel 68チップスが載ったP8Z68-M PROを使うことにした。このボードには、メモリーの相性を調整するスウィッチもついている。UEFIBIOSは優雅であり、Hackintoshのために特に設定する必要はない。
◆マシン構成
- マザーボード:P8Z68-M PRO →他の選択
- グラッフィクス: NVIDIA GeForce 9800GT (GF9800GT-E512HD/GE)
- CPU: Intel Core i5-2500 3.3GHz
- メモリー: Corsair Vengeance DDR3 16GB (CMZ16GX3M4A1600C9B)
◆ベースシステム
Mac OS X Base System→$99払ってApple Developersに加入したくない場合は、ネットで探すのも手である。Mac OS X Base System.dmgが何種類か転がっているが、自分のシステム(機器構成)に従って変更を加えたものが多いので注意を要する。
「正規版」の場合は、フォールダーを開くとこのようになっている。
◆インストールUSBの作成
これには、8GB以上のUSBメモリーと、Hackintoshか「正規」のMacマシーンが1台必要である。それでDisk Utilityを立ち上げ、USBメモリーに1 パティションを作る:Option→Master Boot Record、Mac OS Extended (Journaled)。終わっても、Disk Utilityは落とさない。
Disk UtilityのRestoreを選び、Source側に、あらかじめこのMacマシーンのどこかに置いておいたMac OS X Base System.dmgをマウスでドラッグし、Destination側には、パーティションを作ったUSBをドラッグする。→Restoreのアイコンをクリック。通常、10分程度で終わる(マシンのパワーによってはもっとかかる)。
◆インストールし終わったこのUSBのルートディレクトリーにブートローダーをインストールする。Chameleonの最新版を使ってもよいが、ここでは、最も簡単に成功する方法を使う。tonymacx86が開発したChimeraである。→ダウンロード(サインインが必要)。それをUSBのなかにコピーしておくと、あとで便利。
◆Chimeraを立ち上げ、指示にしたがって進むと、左記の画面が出る。 「Change Install Location」をクリックして、USB(パーティッションを作ったときに付けた名前が見える)のほうを選ぶ。この変更をしないで先に進んだ場合は、本体のシステムデスクに新しいブートローダーをインストールすることになり、起動しなくなる可能性があるので注意。
◆ブートローダーを内装したUSBで、Hackintosh化したいマシーンをブートさせる。なお、この時点で、USBのキーボードとマウス(PS2は不可)をつなぎ(USB 2.0であること)、かつ、LANへの接続もしておくとあとで楽だ。ここで使ったマザーボードには、PS2の端子は1個しかないが、そこにキーボードやマウスをつないでも、インストールの過程で作動しなくなる――ドライバーがまだ入っていないからである。
◆写真の画面が出たら、「-v arch=i386」を打ち込む。これで、ブートプロセスがどう動くかが見えるので、カーネルパニックが起きた場合も、問題の在り処を探ることができる。なお、「arch=i386」は、32bitモードで動かすためのブートフラッグである。
◆この過程で、「System uptime in nanoseconds: 30356032808」のような行が出て、そのままフリーズする場合(「-v」を指定しなかった場合は、歯車マークがぐるぐるまわったのち、リセットの指示が出る――ただし、リブートしてもこの状態にもどるだけ)は、マザーボードやグラフィックスボードの相性の問題があるが、ここでは、その個別例には触れない。ここで使用した機器以外の組み合わせについては、OSx86 ProjectのHCL(Hardware Compatibility)サイトに詳細なデータがあるのでそちらを参照してほしい。
◆システム構成が同じなら、20分ほどでインストールが終り、リブート状態になる。そして、ふたたびtonymacx86の子供っぽいリンゴ顔のマーク(ああいやだ!)のトップ画面が出る。
◆ここで、ふたたび「-v arch=i386」というブートフラッグを入れる。
◆このままブートプロセスの膨大なライン群がズラズラとあらわれたのち、一旦白っぽい画面が出て、さらにインストール言語の設定→「Welcom」の画面までじきに行くはずである。Lionまでのときとちがい、認証が1段階簡略化された。なお、この段階では、画面のレゾリューションは、1024 x 768だけのはずである。LANは、ネットが使える状態でつながっている。ただし、以下の点がまだ動かないだろう。これをこれから順次設定していかなければならない。以下の設定は、これまでの操作ののち、再起動をせずにそのまま行なう。再起動すると、ネットへはつながらなくなる。
- ブートローダーを入れる
- 音がでない→オーディオドライバー
- グラフィックスの問題
- ネット関係
◆ブートローダー→Chimeraを使う。今回は、「Change Install Location」で、現在使用中のシステムHDDをターゲットにする。
先に使用したものがインストールUSBのなかに入っているだろう。そのアイコンをクリックする。
◆オーディオドライバー→VoodooHDA.kextとVoodooHDA.prefPaneの2つをインストールする。x86.netサイト(登録が必要)からダウンロードし、デスクトップなどに置いて、コマンドラインでコピーする。
マザーボード P8Z68-M PROのチップスはRealtek ALC892であるが、Snow Leopardまでは使えたドライバーが使えなくなった。選択肢は多くなく、これまで、インストールするとカーネルパニックを起こすことが多かったVoodoo Projectのものが意外にうまく合うのだった。
ダウンロード先→http://www.osx86.net/downloads.php?do=file&id=2334&page=2
VoodooHDA.kextとVoodooHDA.prefPaneをダウンロードし、もう一つ置かれているVoodooHDA SSE2 Enabler.app.tarは無視する。
【注意】
・あらかじめ、/System/Library/Extensions内のALC8xxHDA.kextとAppleHDA.kextを消しておく。やり方は、マウスで捨てればよい。rootの認証は求められる。
・インストール(Kextツールを使ってもよいが、わたしはコマンドラインでするのが一番楽だと思う)
sudo cp -R VoodooHDA.kext /System/Library/Extensions/
sudo cp -R VoodooHDA.prefPane /Library/PreferencePanes/
◆グラフィックスドライバー→NVenabler.kext
ATI系とNVIDIA系とでやりかたが違う(詳細→先のHCLサイト参照)が、ここでは、NVIDIA系のGeForce 9800GTがフルアクセレーションするための処置をする。何もしない状態では、1024 x 768のレゾリューションしか使えない状態になっているはずだ(→「リンゴマーク」→「System Preference」→「Display」)。この状態だと、DVD Playerが使えない(VLCをインストールすれば、これでDVDを再生することは可能)。
インストール→osx86.netのhttp://www.osx86.net/view/1795-nvenabler.htmlから入手。解凍後、適当な場所に置き、コマンドラインでインストールする。
sudo cp -R NVenabler.kext /System/Liobrary/Extensions/
◆LANドライバー→RealtekRTL81xx-0_0_90.pkg
マザーボードP8Z68-M PROのチップスはRealtek 811Eなので、Lnx2Macが献身的に開発したRealtekRTL81xx-0_0_90.pkgを使う。
ダウンロード→http://lnx2mac.blogspot.jp/p/realtekrtl81xx-osx-driver.html
【注意】
LANドライバーのインストールは、最後に行なう。pkgの圧縮フォールダーをクリックして展開し、指示通りにインストールすればよい。終わったら、リブートする。しかし、ときには、インストールに失敗することがあるので、ダウンロードしたRealtekRTL81xx-0_0_90.pkgをあらかじめUSBなどに保存しておき、再起動したときにここからインストールすればよい。むろん、システムHDDをはずして、別のMac/Hackintoshマシーンにつないでインストールすることも可能ではある。
●以上で一応、Hackintoshの基本は終わったことになる。リブートすれば、グラフィックスもオーディオもネットも作動するはずだ。ただし、リブートのとき、いちいちarch=i386(当面、64bitモードではオーディオとグラフィックスで問題が起きる→今後の課題)をコマンドするのはめんどうなので、ブートファイルに以下を設定する。
◆Chimeraをインストールすると、ブートを規定するファイルが、com.apple.Boot.plist(/Library/Preferences/SystemConfiguration 内)からorg.chameleon.Boot.plist(インストール時に作られる/Extra 内)に移される。このファイルに必要な制御事項を書きこめば、起動の仕方を自在にあやつれる。これが、Chameleonの面白いところである。
◆org.chameleon.Boot.plistの記述も、Terminal上のコマンドラインで出来る。わたしは、古いが簡単なviが好きだが、編集できれば、vimでもemacsでも、テキストエディターでもなんでもいい。ただし、編集後、ファイルのステイタスをもとにもどすことを忘れてはならない。
sudo vi /Extra/org.chameleon.Boot.plist → 編集◆org.chameleon.Boot.plistの記述(暫定)
sudo chown root:wheel /Extra/org.chameleon.Boot.plist → オーナーをもどす
<dict> <key>Kernel</key> <string>mach_kernel</string> <key>Kernel Flags</key> <string>arch=i386 npci=0x2000 -v</string> <key>GraphicsEnabler</key> <string>Yes</string> <key>PCIRootUID</key> <string>1</string> <key>Timeout</key> <string>5</string> <key>Legacy Logo</key> <string>Yes</string> <key>EthernetBuiltIn</key> <string>Yes</string> <key>UseKernelCache</key> <string>Yes</string> <key>GenerateCStates</key> <string>Yes</string> <key>GeneratePSates</key> <string>Yes</string> </dict>
●今回、グラフィックスボードとしてNVIDIA GeForce 9800GTを使ったのは、ATI RadeonのボードだとDVD Playerがクラッシュするからであった。
現在アップル・コミュニティから聞こえてくる意見だと、DVD Playerの問題は、ほぼ「常態的」に起こっているらしいが、わたしの試みでは、NVDIA/GeForce9800GTを使うかぎりちゃんとDVD Playerが使えるのである。
なお、 AMD Radeon HD6850 (GV-R6850C-1GD)を使う際には、org.chameleon.Boot.plistに以下のラインを書き加えないと、カーネルパニックを起こして、ブートアップしない。ただし、この4行はあくまでもAMD Radeon HD6850 (GV-R6850C-1GD)の場合の規定であって、他の型番の場合は変えなくてはならないだろう。どう変えるかは、先述のHCL(Hardware Compatibility)サイトのデータに記載されている。<key>AtiConfig</key> <string>Bulrushes</string> <key>AtiPorts</key> <string>4</string>
●今回は、Mountain Lionの動作を調べるためにインストールしたので、実質的に必要な処置だけにとどめ、DSDTは使わなかった。DSDTを設定すれば、当然、起動が速くなる。インストールの方法として、tonymacxos86.comのMultiBeastのように、DSDT DatabaseでマザーボードのDSDTを調べ、それを入力する方法があるが、大抵の場合、マザーボードの型番やBIOSのヴァージョンを特定しても、ちゃんとしたブート状態を作ってくれない。そこで、わざわざLinux(原理的にはWindowsでもMacでもよいし、DSDTを表示してくれるアプリケーションはいくつもある)で調べたりしてDSDTを抽出し、編集することになるが、今回は、「完成されたマシーン」を組むことが目的ではないので、そういう作業は最初からしなかった。
Tetsuo Kogawa 粉川哲夫
anarchyサイト シネマノート ハッキントシュ メール: tetsuo@cinemanote.jp