正しく機種設定する (SMBIOSの設定)

Hackintoshは本物のMacintoshではありませんが、macOSは本物の機種上で動いていると思い込んでいます。Macintoshの機種名によってハードウェア構成が違いますから、それに合わせた効率的な動作を行ったりする可能性もあります。またiPhoneとの連携、iMessage, iClouなどのサービス利用の際に、機種名をチェックし、不整合があると機能を止めることもあります。

なので、実際のハードウェア構成に近い実機のふりをして、その情報を正しく設定しておくことが重要です。

Clover Configuratorを使って設定

ハードウェアを特定する情報は、Cloverのconfig.plistの中の、SMBIOSセクションに書き込まれます。この記事では、その書き方を説明します。SMBIOS (System Management BIOS)というのは、BIOSを使っていたマザーボードにあるシステムを記述する機能です。

SMBIOSセクションに書き込む内容を作るために、Clover Configuratorの機能が便利です。これを起動して、左のメニューからSMBIOSを選択します。右の画面で、いろいろな設定をします。

機種を決める

まずは、Macintoshのどの機種にするかを決めます。ハードウェア、特にCPUが近いものが良いです。CPUが近ければ、チップセットも同じですし、ハードウェアの動作も近いと考えられます。Macintoshの仕様を確認するためにはMactrackerというフリーウェアが便利です。

自作PCならば、おそらくiMacのどれかが適当だと思います。Xeonなどを使う場合は、もしかしたらMac Proかも。またIntel NUCなどで自作する場合は、Mac miniとかMacBook Airなどに同等または近いCPU搭載機種が見つかるかもしれません。

例えば、Kaby LakeのCore i7 7700Kで自作したマシンなら、iMac18,3が最適です。


Clover ConfigulatorのSMBIOSを選ぶと現れる大きな疑問符の右下のボタンを、クリックします。すると機種一覧が出ますので、ここから目的の機種、例えばiMac18,3を選びます。

シリアル番号を決める

最初に決めるのはシリアル番号です。左のほうに、Serial Numberと書かれた場所の番号です。


このシリアル番号はある規則に従って、自動生成されています。最初のアルファベットが製造地(Cは中国)で、次が年号、その年の週、その週に生産された何台めであるかの番号、機種を表す記号、などが特定の規則に従って記載されています。Generate Newというボタンを押すと、番号を生成し直してくれます。変化する部分が、週と製造番号の部分です。

未使用のシリアル番号であることを確認

こうして生成したシリアル番号と同じ番号を持つMacintoshが実在する可能性があります。その場合、実機のユーザに迷惑をかけ、Hackintoshする事に支障が出るのではないかと、コミュニティの人たちは心配しています。そこで、実在するシリアル番号と重複しない番号を使うことが強く推奨されています。

実存の番号と重複しているかどうかの確認方法は、簡単です。生成したシリアル番号をコピーして、以下のページにペーストします。

この結果、「申し訳ありませんが、このシリアル番号は有効ではありません。ご確認の上、もう一度やり直してください。」と表示されれば問題ありません。もし、保証状況やサービス期間の案内が出るようなら、このシリアル番号は実機で使われている番号です。その場合は、別のシリアル番号を生成し直します。実際に生成してみるとわかるのですが、実存するシリアル番号に当たることはほとんどありません。

SmUUIDを設定する

SmUUID と書かれた欄が空白かと思います。UUIDはオブジェクトを一意に識別するための128ビットの数値です。例えばSSDやHDDにも付いていて、ボリュームを識別できます。ソフトウェアによってはSmUUIDで不正利用のチェックをしているようなので、一旦決めたらめったには変更しないようにしましょう。

UUIDはターミナルを開いて、uuidgenというコマンドをタイプすると生成できます。

$ uuidgen
97809030-7837-424E-BB69-246B934CB66D

何度か生成して、適当な番号を選べば良いです。これをコピーして、Clover ConfiguratorのSmUUIDの欄にペーストします。

その他の値

そも他の値は自動生成された値で問題ありません。

Board Serial NumberはMacintoshのロジックボードのシリアル番号です。適当にそれっぽい値が生成されているので、そのまま使います。Bios Versionは、High Sierraで重要になりました。APFSからの起動に対応しているかをこれでチェックし、対応していないとインストールできないようです。最新のClover Configuratorを使えば、対応したバージョンが生成されます。この他、Firmware FeaturesやFirmware Features Maskなどは機種を特定するための値です。これもHigh Sierraのインストールに必要なようです。

config.plistに書き込む

Clover Configuratorは設定した値を元にCloverのconfig.plistを作ってくれます。とはいえ、SMBIOSの設定しかしていませんので、中身はSMBIOSのセクションだけです。

作った内容をconfig.plistファイルに書き出すメニューがあります。もしくは、左の一番下にある、Text Modeを選ぶと、設定に基づいたconfig.plistをテキスト形式で観ることができます。これらのSMBIOSセクションをコピーして、Cloverのconfig.plistに書き込みます。

補足

SMBIOSのデフォルト設定

Clover r4179以降では、config.plistで以下の値:

  • BiosReleaseDate
  • BiosVersion
  • FirmwareFeatures
  • FirmwareFeaturesMask

を指定しなくても、機種モデルの最新の値がデフォルトで設定されるようになったという情報もあります。実際にBiosVersionを削除して見たところ、それでも最新の値が使われていました。Step 2の作業の代わりに、これらの指定を単に削除して、Cloverのデフォルトに任せるのも可能かと思われます。

http://www.insanelymac.com/forum/topic/304530-clover-change-explanations/page-4#entry2482211

(2019/4/10 加筆)

さらに、最近のCloverでは、SMBIOSのかなりの部分を自動的に作ってくれるようです。ファームウェアバージョンなどを最新にしてくれるようなので、config.plistで指定しない方が良いかもしれません。ということで以下の4種類、

  • BoardSerialNumber
  • ProductName
  • SerialNumber
  • SmUUID

を指定しておくだけで良いらしいです。

13件のコメント

  1. 初めまして。macを全く知らない人間です。
    surface laptopを買ったので初めてvmplayerを入れて、macをセットアップしました。
    ここを参考に https://oar.st40.xyz/article/483 そして、
    imessegeやfacetimeが使えないのでいろいろさがしていると http://www.mynote.us/?p=672 
    にたどりつきました。
    それでゲストOSのmac上からClover Configuratorをダウンロードしたのですが、そこからが全く
    なにをしたらよいのかわからなくなりました。
    https://github.com/toshmatik/VMWare-iMessage/blob/master/instructions.md を
    見て途中までは理解できたのですが、config.plistに追加するにも、このファイルがmac内の
    どこにあるのかさっぱりわからないです。
    素人でもわかるサイトはございますか?

  2. 申し訳ないです、Windowsは使っていないのでわかりません。でも/EFI/CLOVERの中ではないかと想像しますが、間違っていたらすみません。

  3. Windowsフォルダ内のVMフォルダー内のmacOS 10.12.vmxにClover Configuratorで作成した値を
    付け加えたら、iMessegeもfacetimeも動きました。みなさんは”Hackintosh”なんですね。

  4. Hackintoshは、マップアプリも正常に表示されるのですか? VMではNGです。

    1. 実機と同等に機能します。Windows上のVMだとグラフィックスアクセラレーションが効かないので、Map.appだけでなく、プレビュー.appのJPEG表示、写真.app、JPEGのクイックルックなどなど色々な機能が動かないと聞いていますが、いかがでしょう?

  5. 返信遅くなりました。写真アプリは表示できています。プレビューアプリも大丈夫です。
    MapとSiriがダメですね。動かない理由がわかっただけでよかったです。
    ありがとうございました。

  6. 初めまして。古いPCでhackintoshを作り、smbiosの設定でCPUが同じiMac10,1にしました。現在high serriaで正常に動いていてそこからmojaveにアップデートしたいのですがどうやらimac10,1には対応していないらしくアップデートできないので何か解決策は無いでしょうか。ちなみにsmbiosの設定でimac10,1以外で設定してしまうとCPUが変わってきてしまうのでもしそれで起動すれば良いのですがまだ試していない状況です。

  7. Imac10,1だとするとCore 2 Duoでしょうか?High SierraはCore 2 Duoをサポートしていますが、MojaveはIvy Bridge以降しかサポートしていないので無理か、出来たとしても困難なのではないかと思います。命令セットが足りない?

    1. 返信ありがとうございます!そうですか…まあ古いpcですし、遊び半分に入れてみたのでhigh sierra のままで使い続けようと思います。ありがとうございました!

  8. こんにちは
    Core2duoマシンでHackintoshしているものですが,mojavepatcherとCatalinapatcherでCayalinaまでアップデートできました。
    問題なく動いています。
    試してみてはどうでしょうか。

    1. 本当ですか!実はmojavepatcherなどは知っていたのですがhackintoshでできるか不安で手を出していなかったのですが、起動しなくなること覚悟でやってみようと思います笑
      貴重な情報ありがとうございます!

  9. そうなのですか、Core 2 DuoはCatalinaでもいけるのですか。情報ありがとうございます。

  10. CatalinaPatcherだと、Patchをあてるとうまく起動できないことがあると思うので、Mojave patcherのPatch Onlyでパーティション分けてインストールしたほうが良かと思いますよ。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です