質問cron
はOSX El Capitanで動作するはずですか?
背景私はOSXで何年もcrontabを使用しましたが、El Capitanでは動作しないようです。ユーザー名を/usr/lib/cron/cron.allow
に追加し、マシンを再起動しましたが、それでもcronジョブは何もしませんし、エラーでメールを送信しません。マンページでは、Appleはcronを使用することを望まないが、それが(まだ)機能していないとは言わない。
私にはうまくいくようですが、エディターを指定する必要があると思います:
env EDITOR=nano crontab -e
Cronを追加し、指定された名前と場所でファイルを保存します。私の場合、/tmp/crontab.xxxx
のファイルです。
その後、crontab -l
を実行すると、cronが表示されます。
これは、Googleでこれを見つけた人にとっての別の答えです。多くの結果はありません。
私にとっては、何らかの形で/usr/lib/cron
が/var/at
(私も聞いたこともない…)にシンボリックリンクされ、/var/at
にはcron.allow
ファイルがありましたが、ユーザー名はそうではありませんでしたで、Sudo vi /var/at/cron.allow
を実行してユーザー名を追加した(どういうわけかecho
をそのファイルにリダイレクトできなかった…)修正しました。
Mojaveの場合、フルディスクアクセスは、システムファイル(プライバシー関連のデータやcrontabなどのシステム構成を含む)を変更できないようにします。
アクセスを有効にするには:
El Capitan(10.11.5)を使用するMacBookでは、「cron」は引き続き正常に機能します。
「/usr/lib/cron.deny」がデフォルトであり(「Guest」のみがリストされます)、「cron.allow」はありません。動作させるためにカスタマイズを行ったことを思い出さないでください(init/configファイルのmod、chmodのない、file/dirの作成/削除がないなど)。
(4月にMacBookが死ぬまで10.6。*を使用していました。5月中旬に10.11を使用し始め、10.11.5アップデート(?5月後半?)後にcrontabを復元しました。 10.11.5アップデートにより再び有効になりました。)
次の簡単なテストを試してください:「crontab -e」、次に「*/5 * * * * date >> /tmp/z.date」。 5分ごとに新しい日付が表示されるはずです。
動作する場合は、「*/5 * * * * env >> /tmp/z.date.1」を試して、環境を確認してください。たとえば、デフォルトのPATHは非常に短いです。
ところで、「at」はバッチジョブキューです。 「at」、「batch」、および「cron」は、同じことのバリエーションを行うため、しばしばグループ化されます。
cd /usr/lib/cron
と入力すると、ls
と入力すると、at.deny
とcron.deny
が表示されますが、at.allow
またはcron.allow
は表示されません。 Sudo nano cron.allow
を実行し、ユーザー名を1行に1つずつ入力します。 at.allow
のコピーを作成します。これらの2つのファイルを作成し、実行を開始しました。
Appleによると、cronはしばらく前に廃止されました。彼らは最終的にエルキャピタンのGMのプラグを抜いたに違いありません。 Appleは、cronの代わりにlaunchdを使用することを提案します。これがチュートリアルです: launchd