macOS Sequoia以降でFAT/exFATボリュームが“NO NAME”になる問題と対策まとめ
はじめに
macOS Sequoia(macOS 15 系)にアップデートしてから、
USBメモリや開発ボードを挿すと「NO NAME」と表示される
という現象に気づいた人はいませんか?
特に TinyGo や CircuitPython など、
FAT32 形式でマウントされる開発ボード を扱う人にとっては
地味に困る問題です。
本記事では、現時点で分かっている原因の整理と、
すぐ試せる回避策をまとめます。
問題の概要
- 対象: FAT / FAT32 / exFAT 形式のメディア(USBメモリ、SDカード、開発ボード等)
- 現象: Finder や Disk Utility 上でボリューム名が「NO NAME」と表示される
-
再現例:
- Windows / Linux では正しいラベルが見える
- macOS Sequoia 以降 では “NO NAME” 表示になる
- exFAT では一部環境で正しく表示されるケースあり
Apple Discussions や MacRumors フォーラムでも複数報告があり、
OS 側のバグ または FAT ラベルの読み取り処理の不具合 とみられます。
参考: TinyGo Flash が macOS 15 で動作しない問題(Zenn 記事)
技術的背景(推測)
FAT のボリュームラベルはブートセクタ内の固定位置に格納されます。
macOS Sequoia ではこのラベル読み込み処理が変更され、
特定条件(FAT32 + 短いラベルなど)で正しく取得できない
ケースが発生していると考えられています。
Finder と Disk Utility で表示が食い違う例もあり、
キャッシュや表示層の不整合も疑われます。
回避策 7 選
exFAT でフォーマットする
最も確実なのは exFAT 形式を使う こと。
現状、exFAT ではラベルが正しく認識されるケースが多く報告されています。
diskutil eraseDisk ExFAT MYDISK /dev/diskNo
長所: macOS / Windows 両対応
短所: 一部組み込みボード(例: TinyGo / UF2 系)は非対応のことがある
FAT32 で再フォーマット(ツールを変更)
macOS 標準の Disk Utility でフォーマットすると NO NAME 化する場合があります。
代わりに以下の方法を試すとラベルが保持されることがあります。
# ターミナルから直接指定
sudo diskutil eraseDisk FAT32 MYDISK /dev/diskNo
または Windows や Linux でラベルを設定してから Mac に接続する方法も有効です。
ラベルを短く・英数字のみで指定する
FAT は 8.3 形式(最大 11 文字)など制約があります。
短いラベル(例: MYDISK)を英数字のみで 指定すると成功率が上がります。
“NO NAME” 前提でツール側を設定する
TinyGo などではマウント名を設定ファイルで指定できます。
以下のように "msd-volume-name": "NO NAME" を設定しておくと、
マウント名が固定化されていても動作します。
{
"msd-volume-name": ["RPI-RP2", "NO NAME"]
}
Finder で手動リネームしてみる
マウント後に Finder で右クリック →「情報を見る」→「名前を変更」。
一時的には反映されることもありますが、再マウント時に戻るケースもあります。
恒久的ではない ため暫定対応です。
Finder や キャッシュを再起動
- ターミナルで
killall Finder - または ディスクをアンマウントして再接続
再マウントでラベルが正しく読み直される場合もあります。
別 OS でラベル変更する
最終手段として、Windows や Linux でラベルを書き換えてから Mac に接続する。
GUI でもコマンドでも構いません。
# Linux例
sudo fatlabel /dev/sdb1 MYDISK
まとめ
| 状況 | 推奨フォーマット | 備考 |
|---|---|---|
| 開発ボード(UF2等) | FAT32(ラベル短め) | “NO NAME” なら msd-volume-name で対応 |
| USBメモリ共有用途 | exFAT | macOS で安定表示 |
| 古い機器互換性が必要 | FAT32 | ラベル制約に注意 |
おわりに
この問題は、FAT のラベル読み取りまわりの OS 側の不具合 である可能性が高く、
将来的な macOS アップデートで修正される可能性もあります。
とはいえ、開発現場では「今すぐ動かす」ことが重要。
上記のいずれかの方法で、まず回避してみてください。
もし他の再現パターンや有効な方法を見つけた方は、
ぜひ コメント や Issue で共有してください。
Discussion