panda's tech note

macOS Mojaveのターミナルですべてのファイルにアクセスする方法

macOS Mojaveではセキュリティ強化のため,アプリケーションごとにディレクトリ・ファイルへのアクセス権が設定されています。ターミナル(Terminal.app)も例外ではないため,sudo で特権ユーザとして実行してもアクセスできないディレクトリ・ファイルが存在します。

例えば、iPhoneやiPadのバックアップファイルが保存される ~/Library/Application Support/MobileSync/Backup/ ですが,

$ sudo ls ~/Library/Application\ Support/MobileSync/Backup/

を実行すると Operation not permitted とエラーが表示されます。これでは,このディレクトリを rsync でバックアップを取ろうとするときに不便です。

そこで今回は Terminal.app に全てのディレクトリ・ファイルへのアクセス権を付与(もちろんユーザごとの権限は残ります)する方法を紹介します。

Terminal.app からすべてのディレクトリ・ファイルへのアクセスを許可

以下の手順で Terminal.app からすべてのディレクトリ・ファイルへのアクセスを許可することができます。

  1. System Preferences(システム環境設定)を開きます
  2. Security & Privacy (セキュリティとプライバシー)を選択します
  3. Privacy(プライバシー)のタブを選択します
  4. Full Disk Access(フルディスクアクセス)を選択し,「+」ボタンを押して Terminal(ターミナル)をアプリケーションリストに追加します