cronで実行するとファイル操作がエラーになる

Pythonで書いたスクリプトをcrontabに登録して実行しようとしたら、スクリプトからファイルを開く時点でエラーが出てしまった。

環境

macOS Monterey 12.4

状況

基本的には冒頭のとおり。

Pythonスクリプトをcrontabに登録して実行したところ、書き込みモードでファイルをオープンするところで次のようにエラーが出る。

PermissionError: [Errno 1] Operation not permitted: (略)

ネット検索して調べてみると、システム環境設定の「セキュリティとプライバシー」でフルディスクアクセスに/usr/bin/cronを追加してやる必要があるとのこと。でも、自分のマシンには/usr/bin/cronがない。

困った。

解決策

/usr/sbin/cronを登録する。(コマンドのpathが変わっただけだった…。)

  1. システム環境設定を開く
  2. セキュリティとプライバシーを開く
  3. プライバシータブを開く
  4. 一覧の中からフルディスクアクセスを選択して「+」ボタンをクリック
  5. Ctrl+Shirt+Gで開いた窓に/usr/sbinと入力し、cronを選択する

どうやらcronのpathがMojave以降で変更になっているためらしい。

参考

タイトルとURLをコピーしました