サイトアイコン Boot macOS

正しく機種設定する (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というフリーウェアが便利です。

‎Mactracker provides detailed information on every Apple Macintosh, iPod, iPhone, and iPad ever made, including items such as processor speed, memory, graphic cards, supported OS versions, price, storage, and expansion options. Also included is information on early Apple systems, Newton, Apple TV, Ap…
‎Mactracker - Mac App Store

自作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する事に支障が出るのではないかと、コミュニティの人たちは心配しています。そこで、実在するシリアル番号と重複しない番号を使うことが強く推奨されています。

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

Check your Apple warranty status. Enter a serial number to review your eligibility for support and extended coverage.
Check Your Service and Support Coverage - Apple Support - 

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

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で以下の値:

を指定しなくても、機種モデルの最新の値がデフォルトで設定されるようになったという情報もあります。実際に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種類、

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

モバイルバージョンを終了