「Macintosh HD」というボリューム名を安全に変更する方法

PC
スポンサーリンク

今更なのですが、先日、Macで brew を使ってビルドしようとするとエラーしました。
エラーの内容を見ると、ボリューム名の「Macintosh HD2」のところのブランクのせいで、パスを正しく渡せてないようです。
スクリプト側の問題なのでしょうが、ボリューム名を変えたほうが手っ取り早いと思って今回変えてみました。意外と大変でしたので、その方法をまとめました。

スポンサーリンク

環境

私の環境では、ホームディレクトリは以下の場所にあります。

/Volumes/Macintosh HD2/Users/xxxx

システムディスクが「Macintosh HD」で、もう一本のディスク「Macintosh HD2」にユーザ用のフォルダを割り当てています。

スポンサーリンク

手順概要

手順の流れは以下のとおりです。

  1. 別の管理者権限ユーザを作成してログインし直す
  2. ボリューム名を変更する
  3. ホームディレクトリを変更する
  4. 再起動

順を追って説明します。

スポンサーリンク

作業用ユーザを作成

上記の通り、ホームディレクトリのパスの中にボリューム名が含まれているため、ボリューム名を変更するとホームディレクトリのパスが変わってしまいます。そこで、影響を受けない他の管理者権限ユーザを作成してから作業するのがベターです。

はじめに、「システム環境設定」の「ユーザとグループ」を開きます。
鍵マークをクリックして鍵を解除した後、「+」ボタンを押し、必要な情報を入力して新規のユーザを作成します。
Mac 新規ユーザ

次にこの新規ユーザのホームフォルダの所在を確認します。

controlキーを押しながら作成したユーザを選択し、「詳細オプション」を開きます。
Macホームディレクトリ
この例では、作成した新規ユーザのホームディレクトリは「/Users/」にあることがわかります。
念のため、ターミナルを開いて lsコマンドでこのフォルダを確認し、シンボリックリンクとなっていないかを確認します。もし、シンボリックリンクが張られていたら、リンク先を辿って再度確認します。

$ ls -lF / | grep Users
drwxr-xr-x   7 root  admin   224  5  9 14:36 Users/
$ ls -lF /Users/ | grep user1
drwxr-xr-x+ 11 user1   staff  352  5  9 14:36 user1/

 

その後、ディスクユーティリティを開き、各ディスクのマウントポイントをチェックします。
Mac ディスクユーティリティ
この例では、「/Users」は「/」配下にあり、「Macintosh HD」のボリューム配下であることがわかります。

以上より、この新規ユーザは「Macintosh HD2」のボリューム名を変更しても、影響を受けないことがわかります。

一旦、ログアウトして、作業用のユーザでログインしなおします。

スポンサーリンク

ボリューム名を変更する

先ほど作成した作業用のユーザでログインして作業します。

ディスクユーティリティを開きます。
目的のボリュームの名前のところをクリックして、新しい名前を入力します。

Mac ボリューム名変更

ブランクの代わりにアンダーバーを使って「Macintosh_HD2」としました。

スポンサーリンク

ホームディレクトリを変更する

引き続き作業用ユーザのまま、「システム環境設定」の「ユーザとグループ」を開きます。

鍵マークをクリックして鍵を解除した後、controlキーを押しながら元のユーザを選択し、「詳細オプション」を開きます。
Mac ホームディレクトリ
先ほど変更したボリューム名に合わせて、以下の通り、ホームディレクトリのパスを変更します。

/Volumes/Macintosh_HD2/Users/xxxx

なお、以下のようにシンボリックリンクを張っておき、ホームディレクトリのパスを「/Users/xxxx」としても構いません。

/Users/xxxx -> /Volumes/Macintosh_HD2/Users/xxxx

変更後、再起動します。

スポンサーリンク

シンボリックリンクだけを作成する方法

上の手順ではボリューム名自体を変更しましたが、ボリューム名は変えずにシンボリックリンクだけを張る方法ではどうでしょう。

以下のようにシンボリックリンクを張ります。

/Users/xxxx -> /Volumes/Macintosh HD2/Users/xxxx


そして、「システム環境設定」の「ユーザとグループ」で、ホームディレクトリのパスを「/Users/xxxx」とします。

そうすれば、ボリューム名にブランクが含まれていてもホームディレクトリにはブランクが含まれなくなります。対応方法としてもこっちのほうがスマートです。

実際にこちらの方法も試してみました。

冒頭の brew を使ったビルドを試してみましたが、残念ながら同じところでエラーしました。。
(Pythonに疎いのですが、__file__などの結果が、シンボリックリンクのパスではなく「/Volumes/Macintosh HD2/Users/xxxx」のほうのパスとなっていました。)

何か情報があればアップデートします。

スポンサーリンク

トラブル対応

もし、ホームディレクトリとして存在しないパスを設定してしまったような場合、ログインできなくなります!

上記の手順の通り、作業用のユーザを作成してあれば、再度そのユーザでログインして設定を見直すことができます。

そうでない場合、起動直後に command(⌘) + R を連打して、復元モードで起動し、システムの設定を見直す必要があります。

参考: macOS 復元について – Apple サポート

スポンサーリンク

まとめ

brew でビルドしようとすると、ボリューム名の中のブランクのせいでエラーしたことから、ボリューム名とホームディレクトリを変更しました。ここでは、その手順をまとめました。
なお、ブランクを含まないように変更した後は、無事ビルドは成功しました。

最後までお読みいただきありがとうございました!

タイトルとURLをコピーしました