2012-11-07 200 views
0

在哪裏檢查cron作業的日誌? 我做了pgrep cron,它給了2358 這是什麼意思?爲什麼我的crontab沒有執行我的shell腳本?

0 02 * * * /feedbatch/application/scripts/baselineUpdate.sh 
    0 13 * * * /feedbatch/application/scripts/baselineUpdate.sh 
    #0,10,20,30,40,50 * * * * /feedbatch/application/scripts/partialUpdate.sh 
    */2 * * * * /feedbatch/application/scripts/partialUpdate.sh 
    15 0 * * * /usr/sbin/logrotate -s $HOME/logrotate.status -f $HOME/endeca-logrotate.conf 
    16 0 * * * /usr/sbin/logrotate -s $HOME/outputrotate.status -f $HOME/endeca-outputrotate.conf 
+0

你見過http://unix.stackexchange.com – jsj

回答

1

你的腳本是在這個位置 -/feedbatch/ 請檢查一個名爲feedbatch的目錄是否存在於/。以及如果目錄存在,普通用戶是否有權運行其中的腳本。嘗試把所有的腳本放在一個新的bin文件夾..多數民衆贊成在一個良好的做法..

其他腳本在/ usr/sbin/.... 這裏也許可可能是一個問題。 嘗試把所有這些放在root crontab中。所以這不會是任何權限問題。 另請檢查您的用戶名是否存在於/etc/cron.allow和/etc/cron.deny.Dont中如果這兩個文件不存在。但是,如果這些文件存在,請確保你的名字是那裏的cron.allow和cron.deny中

不是有

訪問根crontab做以下

su - root 
crontab -e 
1

cron守護程序將記錄默認的系統記錄器。所以它會被記錄到消息或系統日誌中。 您可以配置rsyslog以記錄所有的cron日誌輸出單獨文件。這有點取決於你的Linux發行版。作爲一個榜樣來寫的cron日誌單獨的文件Ubuntu12.04:(uncommand cron的*線)
編輯/etc/rsyslog.d/50-default.conf

... 
auth,authpriv.*   /var/log/auth.log 
*.*;auth,authpriv.none  -/var/log/syslog 
#cron.*    /var/log/cron.log 
#daemon.*   -/var/log/daemon.log 
... 

重啓cron守護程序。
您的cron輸出應立即記錄到/var/log/cron.log。
這應該讓你更好地瞭解「cron正在做」。