先日、macOS Venturaのインストールテストを実施していたところ、macOSの起動ドライブの名称が「名称未設定」になっている事に気がつきました。
これに先立ち、macOS MontereyをUSBメモリからクリーンインストールしていたのですが、ディスクを消去する際、名前を適切に設定しなかったせいで、「名称未設定」が表示されてしまっている模様。
macOSが起動した後の名称は(Finderなどに表示される)は、ディスクユーティティで変更できたのですが、ブートメニューに表示される名前は、ディスクユーティリティでは修正できないのです。
以下、「名称未設定」を修正する方法を説明します。
SIPを無効開始コマンド実行
今回の問題を修正するためAsk Differentの「Rename macOS Monterey disk in Startup Manager」が参考になりました。Macのディスクが「Untitled(名称未設定)」になっているのを修正したいという質問で、以下のような手順を実行することで修正できるようです。
- SIPを無効化する。Command + RでmacOSの復旧システムを起動し、ターミナルを開いて以下のコマンドを実行する。
csrutil disable
- macOS Montereyを通常モードで再起動し、ターミナルを開いて以下の一連のコマンドを実行する(1行ずつコピペして実行しました)。
GROUP="$(diskutil info / | grep "APFS Volume Group")" UUID="${GROUP##* }" cd /System/Volumes/Preboot/$UUID/System/Library/CoreServices/ sudo bless --folder . --label "Macintosh HD" printf "Macintosh HD" | sudo tee .disk_label.contentDetails; echo sudo chgrp wheel .disk* cd ~
- SIP設定をクリアするため以下のコマンドを実行する。
sudo csrutil clear
- 再起動するとSIPが有効になる
起動メニューを表示したところ「名称未設定」が「Macintosh HD」に修正されていました。
なお技術的詳細に関して以下のような説明がおこなわれています。
The Mac Startup Manager is stored in the firmware on the logic broad. The Mac Startup Manager reads the label to display from the same folder that the boot file is located. In the case of macOS, the boot file is named boot.efi and is located in the APFS volume named Preboot by default. Under macOS Monterey, this volume is protected by SIP. The label is stored as an image in the files name .disk_label and .disk_label_2x The file chosen by the firmware depends on the resolution of the display. Both files can be created by the bless command. A third file named .disk_label.contentDetails contains a text copy of the label. This file is not created by the bless command and is not used by the firmware.
Mac Startup Managerは、ロジックブロード上のファームウェアに格納されています。Mac Startup Managerは、ブートファイルがあるフォルダと同じフォルダから表示するラベルを読み取ります。macOSの場合、ブートファイルはboot.efiという名前で、デフォルトではPrebootというAPFSボリュームに配置されています。macOS Montereyでは、このボリュームはSIPで保護されています。ラベルはイメージとして.disk_labelと.disk_label_2xというファイル名で保存されます。ファームウェアが選択するファイルはディスプレイの解像度に依存します。両方のファイルは bless コマンドで作成することができます。.disk_label.contentDetailsという名前の3番目のファイルには、ラベルのテキストコピーが含まれています。このファイルは bless コマンドでは作成されず、ファームウェアでも使用されません。
SIPで保護されたファイルを変更する必要があるため、最初にSIPを無効化し、blessコマンドで、起動メニューに表示されるラベルを作成するという意味のようです。
まとめ
macOSの起動メニューに表示されるラベルを変更するには面倒な手順が必要です。ディスク初期化の際、最初から「Macintosh HD」という名前をつけておけばこのような手間は不要かもしれません。