通常macOSで何か問題が発生した場合、リカバリーモードを利用してトラブルシューティングする事が多いと思います。
リカバリモードは実機の場合は起動時に「Command + R」を押すことで簡単に実行できますが、仮想マシンの場合、「Command + R」を押してもうまくリカバリモードが起動できない事が多いかもしれません。
今回はVMware FusionのゲストOSとしてインストールしているmacOSで、リカバリモードを確実に起動する方法を2つ紹介します。
方法1: Boot Managerの起動メニューを利用する
最初の方法はファームウェア(EFI)のBoot Managerの機能を利用する方法です。EFIのBoot Managerにリカバリパーティションのboot.efiを起動するメニューを1つ追加しそれを利用するというものです。
このためにはまずゲストmacOSのファームウェアを起動します。この手順は「VMware Fusionでファームウェアを再起動する方法」で詳しく説明していますのでこちらでご確認ください。
ファームウェアを起動すると以下のようなBoot Managerの画面が表示されます。
▲最初の画面では「Enter setup」を選択します。
▲次の画面では「Configure boot options」を選びます。
▲「Add boot options」を選びます。
▲File Explorerが表示されたら「Recover」と表示されているパーティションを選びます。
▲その中の「boot.efi」を選びます。
▲「Input the description」で名前を適当に入力します。「Input optional data」は空白のままでかまいません。「Commit changes and exit」を選んで保存したら、最初の画面まで戻します。
▲起動メニューの中に「Recovery」が追加されました。あとはこの項目を選ぶとゲストmacOSがリカバリモードで起動します。
一度追加した項目は保存されるため、次回からは「Recovery」を選ぶだけでOKです。
この方法に関しては以下のブログ記事を参考にさせて頂きました。
方法2: vmxファイルを編集する
ゲストOSの設定ファイルであるvmxファイルを編集する方法も存在します。
仮想マシンのvmwarevmパッケージの内容を表示し、中に含まれるvmxファイルをテキストエディタなどで開き、以下の行を末尾に追加します。
macosguest.forceRecoveryModeInstall = "TRUE"
仮想マシンを起動すると、ゲストのmacOSが常にリカバリモードで起動するようになります。
なおvmxファイルを編集する場合、VMware Fusionが終了している状態で行う必要がありますのでご注意下さい。起動したままだとVMware Fusion終了時に上書きされてしまう可能性があるためです。
もとに戻したい場合はさきほど追加した行を削除します。
この情報に関しては以下のブログを参考にさせて頂きました。
まとめ
VMware FusionにインストールしたゲストmacOSをリカバリモードで確実に起動する方法を紹介しました。キーボードからリカバリモードを上手く呼び出せないという場合にお試し下さい。