Cron

debian 上的 Cron 作業 - 不工作

  • April 14, 2017

可能是一個無聊的話題,但我昨晚一直在做,似乎無法啟動和執行。

root@host:~# /etc/init.d/cron status
Checking periodic command scheduler...done (running).

因此,該服務似乎執行良好。

我嘗試了許多簡單的測試 cron 作業,但沒有一個起作用:

* * * * * echo "Hello world !!!" 2&>1 >> /tmp/lol.log
05 06 * * mon-fri echo "Nightly Backup Successful: $(date)" >> /tmp/test.log

除此之外,其中一位程序員給了我這份工作,我知道它在我們目前的生產伺服器上完美執行:

* * * * * wget -q -O /dev/null http://www.hostname.com/test/email_au

所以最後,他們似乎都沒有工作,我已經在網上瀏覽了許多指南,但他們似乎都沒有幫助。可能缺少什麼?

編輯: etc 中唯一與 cron 相關的文件是:cron.d、cron.daily、cron.hourly、cron.monthly、cron.weekly、crontab。那裡沒有 cron.deny 或 cron.allow 文件。此外,我正在嘗試以 root 身份執行這些 cron 作業。

您是否檢查了 cron 日誌以了解實際發生的情況?

通常 cron 日誌在 debian 系統中被禁用,通過在相應的配置文件中取消註釋 cron 日誌行在您的 rsyslogd 或 syslogd 中啟用此功能。

cron.*              /var/log/cron.log

檢查您是否有文件 /etc/cron.allow 或 /etc/cron.deny。可以限制使用者(但不是 root)執行 cron 作業。

來自 man 1 crontab:

If  the  /etc/cron.allow  file exists, then you must be listed
(one user per line) therein in order to be allowed to use this
command. If the /etc/cron.allow file does not exist but the
/etc/cron.deny file does exist, then you must not be listed in
the /etc/cron.deny file in order to use this command.

引用自:https://serverfault.com/questions/360272