Ubuntu 14.04を使用していますが、cronデーモンが実行されています。
# ps ax | grep cron
822 ? Ss 0:00 cron
ただし、ジョブは実行されていません。以前は次のような/var/log/syslog
のエントリを取得していました:
2014-05-04T11:47:01.839754+01:00 localhost CRON[29253]: (root) CMD (test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ))
しかし、現在、cron関連のエントリはありません。 /var/log/auth.log
にも次のようなエントリがありました。
2014-05-04T11:47:01.839183+01:00 localhost CRON[29252]: pam_unix(cron:session): session opened for user root by (uid=0)
2014-05-04T11:47:13.495691+01:00 localhost CRON[29252]: pam_unix(cron:session): session closed for user root
ただし、繰り返しになりますが、cron関連のエントリはありません。
私は何かが変わったことを知りません。私はcronを再起動してみました:
# service cron restart
cron stop/waiting
cron start/running, process 24907
crontab -e
を使用してcronジョブ* * * * * date >> /tmp/somefile
を追加しようとしましたが、/var/spool/cron/crontabs/root
に新しいcrontabがインストールされましたが、cronが/etc/crontab
のファイルを使用するようにしました。
使用できるデバッグオプションや、調査可能なエラーメッセージが表示される可能性のあるログはありますか?
cron
ジョブの問題のデバッグをさらに支援するには、メールを確認する必要があります。これは通常、_/var/mail/<user_name>
_または_/var/spool/mail/<user_name>
_のようなファイルに保存されます。
これら2つのファイルは、実際には私のDebianボックスのハードリンクですが、これが標準かどうかはわかりません。
説明
cron(8)
ページから:
コマンドを実行すると、出力はcrontabの所有者(または、存在する場合はcrontabのMAILTO環境変数で指定されたユーザー)にメールで送信されます。
私も同様のタイプの問題を抱えていましたが、/etc/crontab
でrootをユーザーとして指定した後、cronジョブがトリガーを開始しました。
crontab -e
とは異なる/etc/crontab
の構文が原因である可能性があります。
Rootのcrontabがないことを示しましたが、どのユーザーにもcrontabエントリがありますか? rootのみを使用している場合は、次のディレクトリも確認できます。/etc/cron.daily/-/etc/cron.hourly/-/etc/cron.monthly/-/etc/cron.weekly
私のマシン(centos 6.4)では、/ etc/cron.daily /ディレクトリ内にmlocate.cronがあり、cronはそのスクリプトを毎日実行します。
したがって、cronジョブを追加する必要があるだけだと思います。
/etc/crontab
の権限を次のように変更することで、これを解決しました:
-rw-r--r-- 1 root root 778 May 10 21:31 /etc/crontab
以前は-rw-rw-r--
でした。それが唯一の変化でした。機能していませんでしたが、今は機能しています。それでも理由はわかりません。