はじめに
手元の Mac mini (2011 Mid) は High Sierra までしかインストールできません。しかし、メモリを増設したり、ストレージを SSD 化したりしたおかげで、ハードウェアスペックにはまだまだ余裕があります。最新の Xcode は Mojave 向けにリリースされれているため、なんとかして Mojave をインストールできないか模索しました。
いわゆる macOS on macOS について、ライセンス(ローカルの /Library/Documentation/License.lpdf/Contents/Resources/Japanese.lproj/License.pdf) 2B条(iii) によると、ソフトウェア開発のために仮想インスタンスを1つ構築することは問題なさそうです。
今回、仮想化環境で Mojave のインストールに成功しましたので、要点のみまとめます。
用意するもの
- High Sierra が稼働する Mac
- 2 コア以上の物理プロセッサー
- 8GiB 以上の物理メモリ
- 50GB + 「Mojave に割り当てる容量」以上の空きストレージ
大まかな手順
手元の Mac mini (2011 Mid) ではモデルが古く、AppStore から Mojave をダウンロードすることができません。しかし、仮想化した High Sierra なら Mac のモデル名を任意に指定できるため、Mojave インストーラーをダウンロードして作成することができます。
- Mac mini で High Sierra インストーラー(フルサイズバージョン)をダウンロードする
- Mac mini で High Sierra インストーラーでインストール用 ISO を作成する
- 仮想化 High Sierra をセットアップする
- 仮想化 High Sierra で Mojave インストーラー(フルサイズバージョン)をダウンロードする
- 仮想化 High Sierra で Mojave インストーラーでインストール用 ISO を作成する
- 仮想化 High Sierra を削除する
- 仮想化 Mojave をセットアップする
フルサイズバージョンの High Sierra インストーラーのダウンロード
下記の投稿を参考に、フルサイズバージョンの High Sierra インストーラーをダウンロードします。
- How to Install macOS High Sierra 10.13.6 on VirtualBox on Windows
- How to Download a Full macOS High Sierra Installer App
High Sierra インストール用 ISO の作成
下記の投稿を参考に、フルサイズバージョンの High Sierra インストーラーを使用して、High Sierra インストール用 ISO を作成します。
(Create High Sierra DMG Disk Image)
$ hdiutil create -o /tmp/HighSierra -size 7900m -volname highsierra -layout SPUD -fs HFS+J
(Mount DMG Image to your macOS)
$ hdiutil attach /tmp/HighSierra.dmg -noverify -mountpoint /Volumes/HighSierra
(Create a High Sierra ISO image)
$ sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/HighSierra
(Unmount Disk Image)
$ hdiutil detach /Volumes/Install\ macOS\ High\ Sierra
(Convert DMG to ISO)
$ hdiutil convert /tmp/HighSierra.dmg -format UDTO -o ~/Desktop/HighSierra
(Rename and Move ISO Image to Desktop)
$ mv ~/Desktop/HighSierra.cdr ~/Desktop/HighSierra.iso
(Clean up)
$ rm /tmp/HighSierra.dmg
仮想化 High Sierra のセットアップ
下記の投稿を参考に、VirtualBox の設定を調整して、仮想化 High Sierra をインストールします。
仮想化 High Sierra 用の VirtualBox 設定を調整します。
- OS Type は Mac OS X (64bit) にする
- メモリは 4096MiB 以上を割り当てる
- ストレージは 200GB 以上を割り当てる
- 「システム」→「マザーボード」→「チップセット」は PIIX3 にする
- 「システム」→「マザーボード」→「拡張機能」は EFIを有効化にする
- 「システム」→「プロセッサー」→「プロセッサー数」は 2 以上にする
- 「システム」→「アクセラレーション」→「準仮想化インターフェース」は Hyper-V にする
- 「ディスプレイ」→「スクリーン」→「ビデオメモリー」は 128MB にする
- 「ディスプレイ」→「スクリーン」→「グラフィックスコントローラー」は VMSVGA にする
- 「ディスプレイ」→「スクリーン」→「アクセラレーション」は 3Dアクセラレーションを無効化する
- ターミナルから下記コマンドを実行する
$ VBoxManage modifyvm “macOS” --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff
VBoxManage setextradata "macOS" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3"
VBoxManage setextradata "macOS" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata "macOS" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"
VBoxManage setextradata "macOS" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata "macOS" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1
VBoxManage setextradata "macOS" "VBoxInternal2/EfiGraphicsResolution" 1920x1200
仮想化 High Sierra を起動してインストールを始めます。最初の再起動で一旦 仮想化 High Sierra を強制停止して、High Sierra インストール用 ISO をアンマウントします。引き続き、仮想化 High Sierra を起動してインストールを続けます。
フルサイズバージョンの Mojave インストーラーのダウンロード
下記の投稿を参考に、仮想化 High Sierra 上でフルサイズバージョンの Mojave インストーラーをダウンロードします。
- How to Install macOS Mojave Final on VirtualBox on Windows PC
- How to Download a Full Size MacOS Mojave Installer
Mojave インストール用 ISO の作成
下記の投稿を参考に、フルサイズバージョンの Mojave インストーラーを使用して、Mojave インストール用 ISO を作成します。
(Create Mojave DMG Disk Image)
$ hdiutil create -o /tmp/Mojave -size 7900m -volname mojave -layout SPUD -fs HFS+J
(Mount DMG Image to your macOS)
$ hdiutil attach /tmp/Mojave.dmg -noverify -mountpoint /Volumes/Mojave
(Create a High Sierra ISO image)
$ sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/Mojave --nointeraction
(Unmount Disk Image)
$ hdiutil detach /Volumes/Install\ macOS\ Mojave
(Convert DMG to ISO)
$ hdiutil convert /tmp/Mojave.dmg -format UDTO -o ~/Desktop/Mojave
(Rename and Move ISO Image to Desktop)
$ mv ~/Desktop/Mojave.cdr ~/Desktop/Mojave.iso
(Clean up)
$ rm /tmp/Mojave.dmg
仮想化 High Sierra の削除
この仮想化 High Siera は Mojave.iso を作成すれば必要なくなります。Mojave.iso を物理ホスト側にコピーしてから、仮想化 High Sierra をシャットダウンしてから、ストレージ容量節約のため、削除します。
仮想化 Mojave のセットアップ
下記の投稿を参考に、VirtualBox の設定を調整して、仮想化 Mojave をインストールします。
仮想化 Mojave 用の VirtualBox 設定を調整します。
- OS Type は Mac OS X (64bit) にする
- メモリは 4096MiB 以上を割り当てる
- ストレージは 200GB 以上を割り当てる
- 「システム」→「マザーボード」→「チップセット」は PIIX3 にする
- 「システム」→「マザーボード」→「拡張機能」は EFIを有効化にする
- 「システム」→「プロセッサー」→「プロセッサー数」は 2 以上にする
- 「システム」→「アクセラレーション」→「準仮想化インターフェース」は Hyper-V にする
- 「ディスプレイ」→「スクリーン」→「ビデオメモリー」は 128MB にする
- 「ディスプレイ」→「スクリーン」→「グラフィックスコントローラー」は VMSVGA にする
- 「ディスプレイ」→「スクリーン」→「アクセラレーション」は 3Dアクセラレーションを無効化する
- 「ポート」→「USB」→「USB コントローラー」は 有効化して、USB 3.0 (xHCI) コントローター を選択する
- ターミナルから下記コマンドを実行する
$ VBoxManage modifyvm “macOS” --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff
VBoxManage setextradata "macOS" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3"
VBoxManage setextradata "macOS" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata "macOS" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"
VBoxManage setextradata "macOS" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata "macOS" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1
VBoxManage setextradata "macOS" "VBoxInternal2/EfiGraphicsResolution" 1920x1200
仮想化 Mojave を起動してインストールを始めます。最初の再起動で一旦 仮想化 Mojave を強制停止して、Mojave インストール用 ISO をアンマウントします。引き続き、仮想化 Mojave を起動してインストールを続けます。
初回再起動時に、EFIコマンドプロンプトが表示されるので、下記コマンドを入力して実行し、インストールを続けます。
> install.nsh