Windows版VirtualBoxにMontereyを入れて動かす

# 概要

この記事では、Windows 上の VirtualBox に macOS Monterey をインストールして動かす方法を説明します。
なお、以下の環境で検証を行いました
```makefile
検証環境

OS: Windows11(Ver.21H2)
VirtualBox: 6.1.36
MacOS: Monterey.12.0.1
PC: Thinkpad L580(メモリだけ32GBに換装してる)
```
⚠ 注意事項
本記事で紹介する内容はいわゆる Hackintosh に該当します。
これは Apple が公式に推奨している行為ではなく、使用は自己責任となります。

また、インストール手順自体は既存の記事が多いため、以下の参考リンクをご覧ください

・ [【かんたん】Windows上のVirtualBoxでMacOS 12 Montereyが動く](https://daimaohsx.dip.jp/wordpress/2021/12/12/easy-mac-os-12-monterey-runs-on-virtualbox-on-windows/)
・ [VirtualBoxにmacOS 12 Montereyをクリーンインストールする](https://saturday-in-the-park.netlify.app/Mac/MontereyOnVirtualbox/)

本記事では、導入のポイントや、不具合を解消する方法を中心に解説します。



# 流れ

作業の流れは以下の通りです：

1. ISOイメージの用意
2. Monterey の仮想マシンを新規作成
3. 「おまじないコード」の入力
4. インストール
5. 動作確認と設定



# ISOイメージの用意

メイン機として使用することを目指すのであれば、公式のISOイメージディスクを使うのがいいと思われます。正式な手順でMacからダウンロードしISOイメージを作ることは可能なので、ここでは省きます。

アップデートが難しいので、安定版のMontereyバージョンをもってこれれば理想です。


また、Hackintosh の性質上、PC のスペックや相性が大きく影響するため、可能な限り高性能なマシンを使用してください。


# Montereyのマシン新規作成

[VirtualBox公式ページ](https://www.virtualbox.org/wiki/Downloads)から VirtualBox をインストールします。

一般的な仮想マシン作成手順とほぼ同じですが、以下の設定を変更してください


![スクリーンショット 2022-07-30 230401.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456876/18c5d6f1-5fe7-ddb6-0560-f7058ffcc827.png)

1. `プロセッサの個数を限界まで上げる`
(こうすることで動きがかなり改善されるので筆者は2まで上げたが、カーネルパニックが頻発するのでインストール前は1にしておき、完了動作を見ながら探っていくと良)

・`3DアクセラレーションをOn` (GuestAddictionsが場合によって時は必要)

・`ビデオメモリを128MB `
(ディスプレイを8枚にし戻す手法で256MBまで上げられますが、ヌルヌルに動くものの落ちて使い物にならなくなる)

・`ネットワークの設定`
(Wifiが使えないので、疑似的にアダプタ２にブリッジアダプタ（EthernetConnection）を設定することで、ホストOSの無線をゲストOSの有線に変換してネット接続できるようにする)

・`拡張機能(ExtensionPack)のインストール`
(入出力デバイスが使えない可能性が高いので、[公式のリンク](https://www.virtualbox.org/wiki/Downloads)からExtensionPackからインストールしてください。※VirtualBoxを起動しているとインストールに失敗する)


# おまじないコード

おまじない

```
cd "%programfiles%\Oracle\VirtualBox\"
VBoxManage.exe modifyvm "Monterey" –-cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff
VBoxManage setextradata "Monterey" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "MacBookPro15,1"
VBoxManage setextradata "Monterey" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata "Monterey" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-551B86E5744E2388"
VBoxManage setextradata "Monterey" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata "Monterey" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1
VBoxManage.exe setextradata "Monterey" VBoxInternal2/EfiHorizontalResolution 1920
VBoxManage.exe setextradata "Monterey" VBoxInternal2/EfiVerticalResolution 1080
```
<br>
VirtualBoxを終了してからでないと失敗するので、終了後 ターミナルを起動し入力

※Montereyの部分は仮想マシンの名目
下2行は解像度の設定ですので、各々の数字を入れてください（ここでは`1920×1080`にしてます）


# インストール
<br>
起動します、が動くかどうかという前提に加えインストールに30分前後はかかります<br>

ここが鬼門ですが、読み込む画面が出ればひとまず成功です。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456876/fc9d34b6-a3a9-0282-1dc2-e14a06639a49.png" width="850">


失敗ポイントとしては、Hyper-Vをつけているとエラーになるので切ります。


インストール画面まで進んだら、既存のディスクは初期化してOSを入れ直します。

![VirtualBox_Monterey_30_07_2022_23_57_10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456876/1f26fd3a-7453-b654-96cc-fcf0b2253ca3.png)


無事 出れば成功です。


# 動作確認・設定

<br>肝心な部分ですが、実際の動作状態が不安定なため、
一度インストールしましたら一通りのハードウェア機能が効いてるか試してください。
<br>

確認できた不具合としましては、

・動作が重い
・音が出ない(未解決)
・Bluetoothが使えない(ホストOS経由で回避可能かも？)
・GuestAddictionがインストールできない
・iCloudが使えない(VirtualBoxの仕様なので、これだとMacとして使うのが厳しい・・・)
・キーボードが上手く打てない(ひらがながダメなのでGoogle日本語ツールで対応する)
・ネットがつながらない(前述のネット設定で一度つかえたがなぜか繋がらなくなってしまった。有線なら安定して使える)
・カメラ機能(標準だと使用できなかったので拡張機能を入れたら※起動した状態で↓)
```
cd "%programfiles%\Oracle\VirtualBox\"

VboxManage controlvm "Monterey" webcam attach .1
```
以下ホストOSのコンソールで同じように打ってみてください
<br>

※追記 VMwareでやってみたところすんなり動きました
参考【 https://qiita.com/mikazuki_mitsutsuki/items/3d4d418f6dd4a6a5d640 】

解消ポイントみつかりましたら追記していきます。以上。