外付けHDDが取り出せない時の対処法

2016年2月11日

外付けHDD(を代表とするSDカードなどのリムーバブルディスク)を取り出そうとした時に以下のようなダイアログが表示されて取り出せない場合があります。

eject_removable_device1

この状態で「強制的に取り出す」ボタンを押してソフトウェア的に無理やり取り出したり、物理的に線を引っこ抜いたりしたら、データが飛んだり外付けHDDの寿命を縮める恐れがあるので、何が原因となって取り出せないか突き止めましょう。

参考URL

何らかのアプリでファイルを使用中である

eject_removable_device2

外付けHDD内のファイルを何らかのアプリで使用中であるのに、取り出そうとすると上記のようなダイアログが表示され取り出せません。

動画プレーヤや画像ビューアなどが多いと思います。

この場合該当アプリを終了させるだけで取り出すことができます。

何らかのプロセスでファイルを使用中である

警告ダイアログに何が原因かわかるような情報がない場合、以下のようなターミナルコマンドで原因が特定できます。

lsof /Volumes/your_device_name

eject_removable_device3

「your_device_name」には自分の外付けHDDの名前をあてはめてください。

先頭に「sudo」を付け加える必要があることもあります。

上記コマンドを実行すると指定したボリュームで動いているプロセスがリスト表示されるので、アクティビティモニタなどで該当プロセスを終了させれば取り出すことができます。

Spotlightが索引を作成中の場合

lsofコマンドを実行中に「mds」というプロセスがたくさん表示されたら、それはその外付けHDDでSpotlightの索引が作成中であるという事です。

バックアップの用途で外付けHDDを使っているのでSpotlightの索引は必要がないという場合は、「システム環境設定」 > 「Spotlight」 > 「プライバシー」で索引対象から外しておきましょう。

eject_removable_device4

左下の「+」ボタンを押して外付けHDD自体を選択するだけ。

また、ターミナルコマンドからも対象ボリュームを検索対象外にする事ができます。

eject_removable_device5

対象ボリュームがどのような状態かチェックしたい場合は以下のコマンドを実行

mdutil -s /Volumes/your_device_name

対象ボリュームを索引対象にしたい場合は以下のコマンドを実行(sudoは必要がない場合あり)

sudo mdutil -i on /Volumes/your_device_name

 

対象ボリュームを索引対象にしたい場合は以下のコマンドを実行(sudoは必要がない場合あり)

sudo mdutil -i off /Volumes/your_device_name