乌班图

乌班图

乌班图

在我的 Ubuntu VM 中,我将 cronjob 配置为每分钟运行一个 python 脚本只是为了测试

#cat /var/spool/cron/crontabs/*

MAILTO = "[email protected]"
* * * * * python /home/forge/web-app/database/backup_mysql.py

现在已经 5 分钟了,我没有看到任何电子邮件发送给我。我没有看到正在生成任何备份文件。

我有一种感觉,这个 cronjob 永远不会运行。

我该如何检查?我如何解决它 ?

我需要重新启动某种服务吗?


脚步

我检查pgrep cron了打印出来的号码。

人们建议删除我的之间的空格=,我按照建议做了

MAILTO="[email protected]"

重新启动我的 cron 服务

sudo service cron restart

然而,同样的结果。好像还没触发。


最大操作系统

另一方面,我的 Mac 操作系统中有此设置

MAILTO = "[email protected]"
0 * * * *       python /Applications/MAMP/htdocs/code/web-app/database/backup_mysql.py

它运行得很好..

答案1

首先,您应该检查的日志文件是 /var/log/cron ,以确保 cron 确实每分钟都按计划运行(如果没有,您应该检查 cron 守护程序的功能问题)。

如果 cron 守护进程运行良好并且您的任务确实每分钟都在运行,请尝试从 CLI (python /home/forge/web-app/database/backup_mysql.py) 手动运行脚本并查看是否返回任何输出(如果您的脚本没有返回输出消息,您将不会通过电子邮件收到任何通知)。

最后,根据环境的配置方式,您可能需要运行 python 脚本,同时提供 python 二进制文件的完整路径:

root@bbdfbbeb62b0:~# which python
/usr/bin/python

相关内容