cron任务问题

cron任务问题

我有一个 cron 任务

6,36 * * * * python /usr/local/news.py >> /var/log/newlog

它应该每小时的第 6 分钟和第 36 分钟运行一次。

但对于某些系统,每次运行此任务 4 个进程/次。此任务是更新数据库,当三个进程同时更新数据库时会导致问题。

我在 /var/spool/cron/root 中列出了 4 个任务,这是其中一个任务

这里可能出了什么问题?

谢谢

编辑

10月9日 20:06:01 在线 CROND[7882]: (root) CMD (python /usr/local/news.py >> /var/log/newslog)  
10月9日 20:06:01 在线 CROND[7883]: (root) CMD (python /usr/local/news.py >> /var/log/newslog)  
10月9日 20:06:01 在线 CROND[7888]: (root) CMD (python /usr/local/news.py >> /var/log//newslog)  
10月9日 20:06:01 在线 CROND[7890]: (root) CMD (python /usr/local/news.py >> /var/log//newslog)

答案1

以下命令的结果是什么?如果列出多个数字,则 cron 运行多次,这可能会导致此问题。

pgrep -l cron

答案2

你说的‘我在 /var/spool/cron/root 中列出了 4 个任务’是指:

“我的 root crontab 中有 4 行内容,全都是相同的。”?

请粘贴“crontab -l”的输出。如果它看起来像:

6,36 * * * * python /usr/local/news.py >> /var/log/newlog
6,36 * * * * python /usr/local/news.py >> /var/log/newlog
6,36 * * * * python /usr/local/news.py >> /var/log/newlog
6,36 * * * * python /usr/local/news.py >> /var/log/newlog

这绝对是问题所在 :0

答案3

看起来两次运行的语法略有不同。您可以检查 /etc/crontab 和 /etc/cron.d 以确认那里没有该命令的副本吗?

相关内容