CronJob 无法在 Python3 16.04 上运行

CronJob 无法在 Python3 16.04 上运行

我已经添加了 cronjob -e,如下所示 -

* * * * * /usr/bin/python3  /home/user/test.py

但是 cronjob 每次都失败。我可以在正常运行时测试脚本,并且它工作正常。

cron 需要每分钟运行一次,并且已经使用 echo 和将输出重定向到文件进行了测试,效果非常好。在单独的实例中尝试使用用户和 root 后,它不起作用。我检查了系统日志,以下是我能看到的内容-

May 20 06:30:01 ubuntu CRON[2145]: (user) CMD (/usr/bin/python3  /home/user/test.py)
May 20 06:30:01 ubuntu CRON[2144]: (CRON) info (No MTA installed, discarding output)
May 20 06:31:01 ubuntu CRON[2148]: (user) CMD (/usr/bin/python3  /home/user/test.py)
May 20 06:31:02 ubuntu CRON[2147]: (CRON) info (No MTA installed, discarding output)
May 20 06:31:29 ubuntu crontab[2150]: (user) BEGIN EDIT (user)
May 20 06:31:37 ubuntu crontab[2150]: (user) REPLACE (user)
May 20 06:31:37 ubuntu crontab[2150]: (user) END EDIT (user)
May 20 06:31:46 ubuntu crontab[2162]: (root) BEGIN EDIT (root)
May 20 06:31:54 ubuntu crontab[2162]: (root) REPLACE (root)
May 20 06:31:54 ubuntu crontab[2162]: (root) END EDIT (root)
May 20 06:32:01 ubuntu cron[862]: (root) RELOAD (crontabs/root)
May 20 06:32:01 ubuntu cron[862]: (user) RELOAD (crontabs/user)
May 20 06:32:01 ubuntu CRON[2177]: (user) CMD (/usr/bin/python3  /home/user/test.py)
May 20 06:32:01 ubuntu CRON[2178]: (root) CMD (/usr/bin/python3  /home/user/test.py)
May 20 06:32:01 ubuntu CRON[2175]: (CRON) info (No MTA installed, discarding output)
May 20 06:32:01 ubuntu CRON[2176]: (CRON) info (No MTA installed, discarding output)
May 20 06:33:01 ubuntu CRON[2183]: (user) CMD (/usr/bin/python3  /home/user/test.py)
May 20 06:33:01 ubuntu CRON[2184]: (root) CMD (/usr/bin/python3  /home/user/test.py)
May 20 06:33:01 ubuntu CRON[2182]: (CRON) info (No MTA installed, discarding output)
May 20 06:33:01 ubuntu CRON[2181]: (CRON) info (No MTA installed, discarding output)

无法弄清楚这里的 MTA 是什么意思。阅读一些论坛 mailx 安装是必需的,因为这是一个错误。16.04 上没有直接的 mailx 安装支持,可能是旧版本支持它。

非常感谢您的帮助。请帮我提供意见。

谢谢,

答案1

MTA 是邮件传输代理。当您输入

crontab -e

添加一行

MAILTO=""

我不确定这是否有帮助。

无论如何,如果您在 cron 中运行它,任何到标准输出的输出都会通过电子邮件发送。

答案2

谢谢大家,

我通过安装修复了它

sudo apt-get 安装 mailutils

我看到了所需的日志,这些日志是由日志生成的-

5 月 20 日 08:02:01 ubuntu CRON[4687]: (用户) CMD (/home/path/test.py) 5 月 20 日 08:02:01 ubuntu postfix/pickup[4397]: CB907603B5: uid=1000 来自= 5 月 20 日 08:02:01 ubuntu postfix/cleanup[4477]: CB907603B5: message-id=<20170520150201.CB907603B5@ubuntu>

但是我没有看到我的脚本在运行 - 但我的路径是正确的,并且没有任何问题,只需输入整个脚本就可以正常运行。

相关内容