2019-10-06

ddコマンドで Operation not permitted

macOS Mojave 10.14.6 のターミナルからddコマンドを使って外付けのハードディスクを消去しようとしたところ、

# diskutil unmountDisk disk9
# dd if=/dev/zero of=/dev/rdisk9 bs=1m
dd: /dev/disk9: Operation not permitted

real    0m0.003s
user    0m0.001s
sys 0m0.001s

なぜかddコマンドで書き込みできない。 Operation not permitted と怒られてしまう。

はて? アンマウントしたストレージに対してrootで書き込んでいるのに「許可されていません」って、なんじゃそれ。なぜ、書き込めない? こちとら、スーパーユーザーだぞ、最上級の特権管理者なのに……

どうやら、これは OS X El Capitan 10.11 あたりからどんどん制限がきつくなっているセキュリティ強化策のせいらしい。rootですら実行できない操作が増えている。う〜ん、良いんだか、悪いんだか。

解決方法(許可を与える手順)は次の通り。

システム環境設定「セキュリティとプライバシー」を開く。

「プライバシー」を選択する。

左側のリストから「フルディスクアクセス」を選択する。

フルディスクアクセスを許可するアプリケーションとして「ターミナル (/Applications/Utilities/Terminal.app)」を追加する。

2 件のコメント:

  1. 助かりました。
    こんな変更ってあるんですね。迷惑な。。。

    返信削除
  2. フルアクセスしてもダメな人、ここに有り,,,。

    返信削除