aquadrops *

Technologies and Labs, Lifelog and more.

2010-10-31

Hackintoshを構築してみた。

広島にハウジングしていたサーバ達を整理した関係で、あらったーなども動いていた、マシンが帰って来ました。

また自宅でもサーバとして使うにはオーバースペックだし、ストリーミングマシンにするには8月に買ったMac miniで事足りているので、ここは1つMac OS Xをインストールし、Hackintoshを構築してみることにしました。

同じ頃に購入したMacBook Late 2008ではパワー不足を感じていましたので、同時にデータも移してしまいます。

巷ではMacBook Airで湧いていますが…笑 (そのうち買います)

注:アップル製でないハードウェアにMac OSをインストールするのはAppleのライセンス違反となります。また、環境によっては正常に動作しない事もあります。当記事を参考にインストールされた場合に発生したトラブルの責任は負いかねます。なお、当記事はライセンス違反を推奨する物ではありません。

参考記事:

用意したもの

  • Cinema Display 20 inch (元々MacBookと繋いで使っていたもの)

  • PCマシン

    主なスペック:

    マザーボード MSI P45 Neo-F

    CPU Core2Quad Q9550 2.83GHz

    RAM DDR2 8GB

    HDD SATA 500GB+500GB+1TB

    NVIDIA GeForce 9400GT 512MB

  • キーボード、マウス

  • Snow LeopardのDVD

  • USBメモリ (ELECOMのUSBメモリにしました。)

  • MacBook Late 2008 (USBサムドライブを作る時に使用)

  • EP45UD3P Snow Leopardインストールパッケージ

ステップ1:USBサムドライブを作成する (所要時間:約60分)

スクリーンショットを含めた方法はこちらを参照 (英語)。

  1. MacBookにSnow LeopardのDVDをセット。
  2. USBメモリをUSBポートに挿す
  3. EP45UD3P Snow Leopardインストールパッケージを適当な場所にダウンロードして解凍しておく。(ステップ2でも使うので、消さないように。)
  4. 「アプリケーション」→「ユーティリティ」→「ディスクユーティリティ」を起動
  5. ディスク一覧からUSBメモリを選択→「パーティション」タブを開く
  6. ボリュームの方式を「1パーティション」に。
  7. [オプション]ボタンをクリック。「GUIDパーティションテーブル」にチェック→[OK]
  8. 適当なボリューム名をつける。フォーマットは「Mac OS 拡張(ジャーナリング)」を選択。→[適用]→1分程度でフォーマットが終わる。
  9. ディスク一覧からUSBメモリ配下のパーティションを選択→「復元」タブを開く
  10. 「ソース」はディスク一覧からSnow LeopardのDVDを選択し、ドラッグする。
  11. 「復元先」は8で作成したパーティションをディスク一覧からドラッグする。→[復元]→30分程度で完了。
  12. USBメモリをマウントする。
  13. 3でダウンロードしたパッケージを起動。インストール先を12でマウントしたUSBメモリにする。
[<img class="alignnone size-medium wp-image-1163" title="2010-11-01 3.39.21" src="/images/uploads/2010/11/2010-11-01-3.39.21-300x213.png" alt="" width="300" height="213" srcset="/images/uploads/2010/11/2010-11-01-3.39.21-300x213.png 300w, /images/uploads/2010/11/2010-11-01-3.39.21.png 638w" sizes="(max-width: 300px) 100vw, 300px" />][8]
  1. **USBサムドライブ内のExtra/DSDT.amlを削除。(重要)**←これをやらないとOSインストールさえ始まらない。
  2. USBメモリをアンマウントする。

これでMacBookでの作業は終わりです。

ステップ2:PCにMac OS Xをインストール (所要時間:約60分)

  1. ステップ1で作成したUSBサムドライブをPCマシンのUSBポートに挿しておく。
  2. PCマシンのBIOS設定変更画面を開き、起動ディスクの優先順位をUSBメモリが1番目になるようにしておきます。(方法はマザーボードの取説参照)
  3. PCマシンが起動後、リンゴマーク→くるくる→Mac OS Xのインストーラが起動。
  4. 起動ディスクのフォーマットをするので、メニューバーの「ユーティリティ」→「ディスクユーティリィ」を起動。
  5. インストール先ディスクを選択→「1パーティション」→[オプション]→「GUIDパーティション」→[OK]→適当な名前を付ける→「Mac OS 拡張 (ジャーナリング)」を選択。→[適用]→数分待つ。
  6. OSインストーラに戻り、5でフォーマットしたディスクにOSインストール。40分程度待つ。※ここで作成するユーザ名は、他のMacから移行する場合、移行元で使っていたユーザ名とは別の物を指定する事。(移行元とコンフリクトする為。)
  7. 再起動。ここでまだUSBメモリは抜かない。
  8. 起動時に起動ディスク選択画面になるので、6で指定したインストール先を選択。
  9. OS起動後、ステップ1の3で使用したEP45UD3P Snow Leopardインストールパッケージをダウンロード、展開し、起動ディスクにインストール。
  10. 起動ディスクを開き、Extra/DSDT.amlを削除。(重要) ←これをやらないと単体では起動しない。
  11. リンゴマーク→ソフトウェア・アップデート
  12. USBメモリを取り出して、再起動。

これでベースのシステムが出来上がり。PCマシンでMac OS Xが起動するようになります。

「ハードウェアの概要」を見ると、

iMacではなく、Mac Proとして認識しているようです。なので、この子は「aquadrops-MacPro」(似非MacPro)と名付ける事にします。

ここまでは前出のURLを参考に軒並み進める事ができます。ここからは環境固有のいろいろな問題が出て来ます。

ステップ3:MacBookからのデータ移行(所要時間: 約120GB程度で約90分)

aquadrops-MacProからMacBookに対してネットワーク越しに移行アシスタントを使おうとしたのですが、MacBook側でパスワードを入力しても認識しなかった為、aquadrops-MacProにMacBookのディスクを直接繋いでしまいます。SATAポートは6つもあるし、ネットワーク越しにやるにも容量も多いので、直接マウントしてしまった方が速いです。

「Time Machineバックアップまたはほかのディスクから」を選びます。それなりに時間はかかります。

ステップ4:いろんな「足りない部分」を直す (所要時間:60〜120分)

ステップ3の後、OSは特に問題無く起動します。が、MacBookから移行する事でハードウェアが大きく変わってしまった為に起因する物から、Hackintosh特有の物まで、不具合が出て来ました。

  • iPhoneが認識しない
  • 音が出ない
    • voodooHDAをインストールし、「環境設定」→「サウンド」→「出力」から、サウンドカードを選択する事で一応音は出ました。
    • ただ、オンボードサウンドカードのハードウェアがしょぼいのか、ヒスノイズが多く、出力も弱いのでボツ。手持ちのRoland UA-4FXのSnow Leopard用ドライバをインストールし、USBで接続したところ、クリアな音が出ました。これで解決。
    • ちなみに、玄人志向のサウンドカードを挿してみましたが、認識せず。PCIカードではダメなようです。
  • スクリーンショットが撮れない
    • スクリーンショットを撮りながら tailで/var/log/system.logを見たところ、

      “_CFGetHostUUIDString: Unable to determine UUID for host. Error: 35”

      というエラーが乱発。

      このエントリを参考に、/Library/Preferences/SystemConfiguration/NetworkInterfaces.plistの内に、

      BSD Name

      en3

      IOBuiltin

      IOInterfaceType

      6

      IOInterfaceUnit

      3

      IOLocation

      IOMACAddress

      ABbPoF5V

      IOPathMatch

      IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/P0P3@1C,2/

      IOPCI2PCIBridge/pci14e4,4311@0/AirPort_Brcm43xx/IO80211Interface

      SCNetworkInterfaceType

      IEEE80211

      を書き足してあげたら直りました。これが直接の原因かは不明。

    • 「このMacについて」のプロセッサ名がおかしい
      • Hackintoshインストール後のプロセッサ名は「不明のプロセッサ」になっていました。

        やはり細部のディテールに拘りたいという人もいるようで、

        フォーラムを参考にAboutThisMacをインストールすることで解決しました。

    • Adobe CS2が「ライセンス切れ」になる。
      • MacBook側でライセンス転送を行い、一旦aquadrops-MacPro側でアンインストール、再インストールする事で直りました。(多分再認証でいいと思います。)
    • 「ファイル共有」周りの挙動がおかしい
      • 同一ネットワーク内にも関わらず、Finderの「共有」欄に、MacBookからMac miniは見えるのに、aquadrops-MacProは見えない、aquadrops-MacProからはMacBookもMac miniも見えない、といった具合の問題が出ました。もしかしたら自作ルータの挙動が悪さをしている可能性もあるかも。ただ、ここはさほど大きな問題ではないので、ゆっくり調べて行くことにします。

ステップ5:aquadrops-MacProをMacBookからコントロールする

デスクには既にMacBookとCinemaDisplayがあり、スピーカーもある関係であまりゴチャゴチャさせたくありません。

1世代前のワイヤレスキーボードとMighty Mouseは持っていますが、aquadrops-MacProにはbluetoothがついていないので使えません。MacBookのパッドの心地よさに慣れてしまっているので、Magic Trackpadも欲しいところですが、これもやはりbluetoothが必須です。

そこで、MacBookのキーボードとパッドを共有してしまえ、という事で見つけたのが teleport。IP経由でキーボードとパッドをコントロールしてしまいます。これならbluetoothの無いaquadrops-MacProでも安心。双方のマシンに入れておきます。

デュアルディスプレイの時と同じように位置関係まで記憶させる事ができます。また、マシン間でファイルのドラッグアンドドロップも可能。ただし、マシン間コピーになるので、コピー元とコピー先で同じファイルができます。

ただ、teleportはたまに接続が切れたり、暴走する事があり、コントロール不可になる事が。その場合は画面共有からコントロールする事になるので、環境設定から画面共有を「入」にしておきましょう。

ちなみにaquadrops-MacProでpiggしてみた物の、全く遅延無く魚釣りやブラックジャックで遊ぶ事ができました。

その後の使用感

やはり、何より「快適」の一言につきます。

HandBrakeでのDVDリッピングがMacBook比2倍になったり、youtubeのHD動画がスムーズに再生されたり、ネットワークスループットも大変よくなりました。VMware Fusionで4つのOS(WInXP,Ubuntu,CentOS 4,CentOS 5)を同時に起動して、さらにMacPortsのインストールコマンドを打っても余裕なのは、さすが4コアだなぁ、という感じです。

細かいベンチマークはまた後ほど。