macOS で "failed to open for writing: Resource busy" と表示される場合の対処法

2034 ワード

TL;DR

先にアンマウントする。

症状

USB 内にあるデータを完全削除しようと思い、shred コマンドを実行したら "Resource busy" と言われてしまった。shred コマンド以外でも、このエラーが出ることはある。

解決法

ファイルシステム名の検索

以下のコマンドを実行する。

Shell
df

対象のファイルシステム名 (例: /dev/disk2s1) をクリップボードにコピーしておく。macOS では、USB は /Volumes 以下にマウントされるので、"Mounted on" の欄が /Volumes/<USB_NAME> となっているディスクの "Filesystem" の欄をコピーすれば良い。

アンマウント

そして、対象のファイルシステムをアンマウントする。

Shell
diskutil unmount <FILESYSTEM_NAME>

所望のコマンドを実行

その後、実行したいコマンドを実行する。たとえば、USB の中身を完全消去したければ以下のコマンドを実行する。

Shell
sudo shred -uvz <FILESYSTEM_NAME>

参考: ハードディスク内のデータを本当の意味で完全消去する方法

参考サイト