ターミナルでディスクを強制的にアンマウント・マウントする方法

macOSではFinderやディスク・ボリュームのアイコンの右クリックなどでイジェクト(アンマウント・取り外し)が可能であるが、稀にこのアンマウントが上手くいかない場合がある。

ここではターミナルで強制的にディスク・ボリュームをアンマウントする方法、更にアンマウントしたディスク・ボリュームを再度マウントする方法をまとめる。

ターミナルでのディスクのアンマウント・マウント

ここからディスク・ボリュームの強制アンマウント・マウントコマンドについて解説するが、もしターミナルでコマンドを実行した際に「Operation not permitted」というエラーが出た場合は下記記事の「ターミナルにフルディスクアクセス権が付与されてるか確認」の項目を参照して頂きたい。

macOSターミナルでNot Permitted(アクセス権)エラーが出た場合の対処法

強制アンマウント

現在Macにマウントされているディスク・ボリュームを強制的にアンマウントするコマンドは下記。

diskutil unmount force /Volumes/Data

コマンドの「Data」の部分には自分がアンマウントしたいボリューム名を入力しよう(画像ではData)。

コマンドが実行されると強制的にボリュームがアンマウントされ「Volume Data on disk4s2 force-unmounted」と表示される。

こちらも「disk4s2」の部分は個人の環境によって変わる。

マウント

ボリュームをマウントし直したい場合、まずは以下のコマンドを実行する。

diskutil list

すると現在Macに接続されてい全てのディスクやボリュームが表示されるので、マウントしたいボリュームの識別子(IDENTIFIER)をリストから探す。

ここでは「Data」というボリュームをマウントしたいのでマウントしたいボリュームの識別子は「disk4s2」となり、ターミナルコマンドは以下のようになる。

diskutil mount /dev/disk4s2

上記コマンドを実行すると指定したボリュームがマウントされる。

アンマウントとマウントを一度に行う

ディスクやボリュームに不具合が発生した際などにアンマウントとマウントの処理を一括で行いたい場合(パワーサイクルと呼ばれる)、下記のコマンドを実行する。

diskutil unmount /dev/disk4s2;diskutil mount /dev/disk4s2;echo "Remounted Volume"

このコマンドを実行すると指定したボリュームが自動でアンマウントされ、再度マウントされる。

前述のコマンドと同じく「disk4s2」の部分は環境によって異なるので適宜自分がアンマウント・マウントしたいボリュームの識別子を指定しよう。

また「diskutil unmount」の後ろに「force」を指定して「diskutil unmount force」という強制アンマウントのコマンドに変えてもいい。

強制アンマウント・マウントを一度に行う場合は下記のようなコマンドになる。

diskutil unmount force /dev/disk4s2;diskutil mount /dev/disk4s2;echo "Remounted Volume"

まとめ

通常、macOSでディスクがイジェクト(アンマウント)出来ない場合、外付けディスクなどの場合はケーブルを無理やり抜いてしまうという方法もあるが、その場合ディスクやファイルにダメージを与える可能性があるため、ディスクがアンマウント出来ない場合はまず上記のターミナルコマンドを試してほしい。