乌班图
在我的 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