![Cron 在下午 5 点而不是早上 5 点工作](https://linux22.com/image/220454/Cron%20%E5%9C%A8%E4%B8%8B%E5%8D%88%205%20%E7%82%B9%E8%80%8C%E4%B8%8D%E6%98%AF%E6%97%A9%E4%B8%8A%205%20%E7%82%B9%E5%B7%A5%E4%BD%9C.png)
我有这个/etc/cron.d/reboot
文件:
PROJECT_ROOT=/usr/local/share/applications/ana
NODE_PATH=/usr/bin/node
REBOOT_SCRIPT=/usr/sbin/reboot
SCRIPT=scripts/server-reload-messages.js
0 5 * * * root cd $PROJECT_ROOT && $NODE_PATH $SCRIPT create
1 5 * * * root $REBOOT_SCRIPT
我需要脚本每天早上 5 点运行一次,但它在 5 点和 17 点运行。
按评论编辑
@roaima,感谢您查看 cron 日志的建议。现在我发现实际上它每天只能工作一次,但是我需要重命名该任务。问题是,当我使用该应用程序时,我收到一条消息,表明服务器现在将重新启动,我检查了日期,当时是下午 05:00,我毫不怀疑出了问题。
May 15 05:00:01 mail CROND[23278]: (root) CMD (cd $PROJECT_ROOT && $NODE_PATH $SCRIPT create )
May 16 05:00:01 mail CROND[52008]: (root) CMD (cd $PROJECT_ROOT && $NODE_PATH $SCRIPT create )
May 17 05:00:01 mail CROND[5363]: (root) CMD (cd $PROJECT_ROOT && $NODE_PATH $SCRIPT create )
May 18 05:00:01 mail CROND[19420]: (root) CMD (cd $PROJECT_ROOT && $NODE_PATH $SCRIPT create )
这是我设法发现的,系统中的日期格式很奇怪,在19:20看起来像这样:
date
Thu May 18 07:20:02 EDT 2023
答案1
正确答案在用户的评论中巴克斯米。问题是12小时服务器的时区与我期望的时区不同。