macOS のボリューム名(ドライブ名)にスペースが入っていたので変更したら想像通り面倒だったので、安定して稼働するまでの過程を記録していきたいと思います。
前提条件
変更前 | 変更後 | 備考 |
---|---|---|
Macintosh HD | Macintosh_HD | OS のボリューム名 |
Macintosh SD | Macintosh_SD | SDカードのボリューム名 |
- 空き容量確保のため、メインのアカウントのホームディレクトリを外部ドライブ(SDカード)に変更している。
- macOS High Sierra(OSX 10.13.3)
- MacBookPro(Retina, 13-inch, Early 2015)
ボリューム名の変え方
簡単な方法
Finder でドライブ名を変えても良いのですが、外部ドライブなど Finer から変更できないドライブもあるので、ディスクユーティリティ上から変えた方が1画面で済み楽で良いと思います。
コマンドで変える方法
$ /usr/sbin/diskutil rename "Macintosh HD" "Macintosh_HD"
ボリューム名変更時のTip
まったく違う名前にするよりは、スペースをアンダーバーに変更する程度にしておくと検索や修正が楽です。
ボリューム名変更後の確認・修正箇所
ホームディレクトリ
[アップルメニュー] - [システム環境設定] - [ユーザとグループ] -(ロック解除)- 現在のユーザを右クリック - [詳細オプション...] の「ホームディレクトリ」の項目を確認・修正します。キーチェーンで iCloud のパスワードうんぬんと出てきた場合は、おそらくここが原因です。
First Aid
command + R で復元モードで起動し、ディスクユーティリティで各ドライブ(パーティション)に「First Aid」でカタログなどの修復をかけ、再起動する。
.bash_profile
で環境変数の変更
$ vi .bash_profile
export
で環境変数の確認
$ export -p
.bash_profile
の変更が反映されていない場合は、ターミナル/コンソールを一旦終了し、再度開いてみてください。反映されない場合は、.bash_profile
の中身を再確認し、OS を再起動してみます。それでも反映されない場合は、別の箇所で環境変数が設定されている可能性があります。
環境変数に依存しない絶対パスを含むファイルの検出
旧ボリューム名を含むファイルのチェック
mdfind
コマンドでファイル名・ディレクトリ名・ソースコードに含まれるファイルのフルパスをリストアップし、必要なものは適宜修正していきます。
$ mdfind "Macintosh HD"
Spotlight で検索して「Finder ですべてを表示」させても良いと思います。
キャッシュの更新
ドライブ名変更後、しばらくは問題ないのですがアイコンやフォントのキャッシュがおかしくなるので、セーフモードで一度起動して、フォント・アイコン・カーネル・システムなどのキャッシュをクリアして更新させます。
別ドライブに置いてあるアプリ
容量確保のため別ドライブに移動したアプリがある場合、アプリが起動しなくなることがあります。
ドライブ名の変更後、アプリを開く前に本体ドライブ(OSの入っているドライブ)の「アプリケーション」フォルダに一旦戻し、そこで一度起動してから再度別ドライブに移動するようにしてください。
これは、本体ドライブの「アプリケーション」フォルダ内から正常起動されたアプリは個別 ID がアプリに振られ紐付けられます。そのため、どこに移動したのか OS が記憶しているので別ドライブに移せるのですが、古いドライブ名で登録されているため、一度本体に移動させることで移動先を更新させます。
アプリの個別情報

おそらく、このアプリが各々保持している情報を修正していくのが一番面倒だと思います。
そして、おそらくアプリを再インストールしてしまった方が楽です。つまり、アプリ側で設定をエクスポートできるのであれば、一旦エクスポートして、アプリを再インストール後、再インポートするのがベストでしょう。
問題は「それが出来ないから大変」だったりもします。
エディタなどの、使用済みファイルの履歴やデフォルト保存先のパスなど、アプリケーションごとにファイルの保存先をキープ(保持)している場合、json
ファイルなどに保存されていればいいのですが、「GitHub Desktop」や「Kobito」などのように SQLite
などの DB に保持している場合はいささか厄介です。
無理やり SQLite コマンドを使って変更しても、改ざん防止を施している場合むしろ動かなくなるので、面倒ですがアプリを起動してファイルを1つ1つ改めて開く必要があります。アプリによってはファイルが見つからないと「再リンク先」を指定できるものもあります。
所感
ボリューム名を「Macintosh HD」「Macintosh SSD」「Macintosh SD」などにしていたのですが、名前にスペースが入っているため、動かないアプリやプログラム、brew
でインストールできないものがあったので変更したかったのですが、「色々と芋づる式で動かなくなるんだろうなぁ」と躊躇していました。
しかし、OS を入れ直すのは簡単なのですが、後学のためと思い思い切って変更してみましたが、やはり大変だったという話し。
参考文献
- How to rename a partition in OS X? @ StackExchange
- How to change Logical Volume name @ StackExchange
- change volume name @ Official Apple Support Communities
- PATHを通すために環境変数の設定を理解する (Mac OS X) @ Qiita
- path_helperについて。Mac OSX 版 @ それマグで!
- Macアプリのアイコンがキャッシュで変わらない時の対処法 @ Qiita