Pythonで書いたスクリプトをcrontabに登録して実行しようとしたら、スクリプトからファイルを開く時点でエラーが出てしまった。
環境
macOS Monterey 12.4
状況
基本的には冒頭のとおり。
Pythonスクリプトをcrontabに登録して実行したところ、書き込みモードでファイルをオープンするところで次のようにエラーが出る。
PermissionError: [Errno 1] Operation not permitted: (略)
ネット検索して調べてみると、システム環境設定の「セキュリティとプライバシー」でフルディスクアクセスに/usr/bin/cronを追加してやる必要があるとのこと。でも、自分のマシンには/usr/bin/cronがない。
困った。
解決策
/usr/sbin/cronを登録する。(コマンドのpathが変わっただけだった…。)
- システム環境設定を開く
- セキュリティとプライバシーを開く
- プライバシータブを開く
- 一覧の中からフルディスクアクセスを選択して「+」ボタンをクリック
- Ctrl+Shirt+Gで開いた窓に/usr/sbinと入力し、cronを選択する
どうやらcronのpathがMojave以降で変更になっているためらしい。
参考