macOS 10.15 catalina で crontab を使用する
crontab を利用して、一時間おきにとあるシェルスクリプトを実行していた。
たいしたスクリプトじゃないのだが、最新 OS の 10.15 catalina さんにしたら、なんかうまく動かないのである。
フルディスクアクセスに cron を追加する
30 * * * * /Users/ユーザーネーム/bin/script.sh 2>> error.txt
みたいな、2>> error.txt
などと尻尾のほうにつけると、ホームフォルダにエラーログを出してくれる。これを見てみると、ls: .: Operation not permitted
とか出てくるわけ。
not permitted とかいわれてもなぁ、とは思ったが、operation not permitteed
でググってみると、どうやら「システム環境設定」>「セキュリティとプライバシー」>「フルディスクアクセス」が関係しているとわかった。
結論としては、そのフルディスクアクセスに/usr/sbin/cron
を追加してやればいいらしい。
やり方
やり方は簡単だ。
「システム環境設定」>「セキュリティとプライバシー」>「フルディスクアクセス」へ直行し、左下の南京錠のアイコンをクリック。
パスワードを入力してロックを外し、[ + ] ボタンをクリックする。
にょきっと出てきたファイル選択のダイヤログで [command] + [shift] + [G] を押すと、フォルダへ移動するボックスがあらわれるので、/usr/sbin/cron
と入力すれば cron までたどりつける。
ファインダーで [command] + [shift] + [G] を押し、/usr/sbin/cron
を出してからそれをフルディスクアクセスのウィンドウにドロップする、というやり方でもいけると思う。
ためしてみると、今度はちゃんと動く。
自分で発見した、みたいに書いてるけど、以下の海外の記事のお力を借りております。どうもすみません、ありがとうございます。
🔗 If Any of Your Crontab Tasks No Longer Works on macOS Catalina
ディスカッション
ピンバック & トラックバック一覧
[…] 参考URL https://mac-ra.com/catalina-crontab/ […]
[…] 諦めかけたその時、こちらのサイトに解決方法が書かれていて、無事に解決! 本当にありがとうございます。 […]
[…] こちらなどを参考に解決してください。 […]