0

在哪里查看 cron 作业的日志?我做了pgrep cron 它给了2358 是什么意思?

    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
4

2 回答 2

1

cron 守护进程将记录到默认系统记录器。因此它将被记录到消息或系统日志中。您可以配置 rsyslog 以记录所有 cron 日志输出的单独文件。这有点取决于您的 linux 发行版。如下示例将 cron 日志写入 Ubuntu12.04 的单独文件:
编辑 /etc/rsyslog.d/50-default.conf (取消命令 cron.* 行)

...
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 执行”。

于 2012-11-07T13:11:04.660 回答
1

您的脚本位于此位置 - /feedbatch/ 请检查 / 中是否存在名为 feedbatch 的目录。以及如果目录存在,普通用户是否有权运行其中的脚本。尝试将所有脚本放在一个新的 bin 文件夹中.. 这是一个好习惯..

其他脚本在 /usr/sbin/.... 这里也可能是权限问题。尝试将所有这些都放在根 crontab 中。这样就不会有任何权限问题。还要检查 /etc/cron.allow 和 /etc/cron.deny 中是否有您的用户名。如果这两个文件不存在,请不要担心。但如果这些文件存在,请确保您的名字存在于 cron.allow 中,而不存在于 cron.deny 中

要访问根 crontab,请执行以下操作

su - root
crontab -e
于 2012-11-07T06:37:32.707 回答