Apple Silicon MacでNVRAMをクリアすると起動しなくなる(再インストールが必要)

Intel Macでは下記コマンドでNVRAMをターミナルでクリアするとNVRAMをリセットできるが、これをApple Silicon Mac(M1)でやるとどうなるのか?

sudo nvram -c

実際に実行したところMac(M1 Mac mini)が起動しなくなり再インストールが必要になったので顛末を掲載すると共にApple Silicon Macでは絶対にこのコマンドを実行しないように注意してほしい。

海外サイトでは「Apple Silicon MacでNVRAMをクリアする方法」としてこのコマンドが掲載されていることがあるが、Apple Silicon Macでこのコマンドを実行すると再起動後に起動不可になる。

Apple Silicon MacにおけるNVRAM

NVRAM情報の参照

まずApple Silicon Macにおいても下記コマンドでNVRAMの情報を取得することはできる(下記コマンドの実行だけであれば安全であることを確認しているが、心配なら実行しないこと)。

sudo nvram -xp

AppleはApple Silicon MacにおけるNVRAMについて、クリア方法を含めて一切の情報を提供していないが、実際には上記コマンドでNVRAM(NVRAMというよりは恐らくM1チップ内の特定領域及びファームウェア)の情報を参照可能だ。

NVRAM情報のクリア

更に下記コマンドを実行するとNVRAMの全てではないが、一部の情報をリセットすることすらできる。

sudo nvram -c
注意
Apple Silicon Macでは絶対にこのコマンドは実行しないこと。

上記の通り、一部項目でエラーが出るもののエラーが出た項目以外はリセットされたことがわかる。

NVRAMクリア前とクリア後のNVRAM情報を比較すると一部項目が消去されていることが確認できる。

NVRAMクリア後、再起動でエラーが出て起動しなくなる

管理人の環境では前述のコマンドでNVRAMをクリア後、再起動したところエラーが出てMacが起動しなくなった。

エラーの内容は「The version of macOS on the selected disk needs to be reinstalled(選択されたディスクのmacOSバージョンは再インストールの必要がある)」であり、正常にスタートアップディスクを認識しなくなってしまった。

また、言語情報がリセットされたためかmacOSの復旧画面(リカバリーモード)は全て英語(簡単に元に戻せる)になってしまっている。

どうやらApple Silicon MacでNVRAMをクリアすると全ての情報がリセットされるわけではないにしろ、ブートに関する情報が破壊され起動しなくなるようだ。

幸い、このエラーが出ても「Recovery」をクリックしてmacOS復旧画面に入り「Reinstall macOS」を選んでmacOS Big Surを再インストールすれば40分ほどで復旧でき、データも失わなかったが危険なことには変わりない。

本来なら実行出来てはいけないコマンド

前述のコマンドは単純に通常起動しているmacOSのターミナルで実行しただけであるが、本来ならリカバリーモードのターミナルならまだしも通常のターミナルで実行出来てはいけないコマンドであるため、将来のmacOSのアップデートでは前述のコマンドの実行は十中八九禁止されるだろう。

危険なことに現時点では前述のコマンドは簡単に実行可能な状態であるため、もしApple Silicon Macを使っているのなら前述のコマンドを含めてNVRAM関連のコマンドは全て実行しないことを強くお勧めする。

冒頭で書いたように海外では多くのフォーラムやサイトで前述のコマンドが紹介されているが、どのような場合であってもApple Silicon Macでは実行しないようにしよう。