【问题标题】:python script not running from cronpython脚本没有从cron运行
【发布时间】:2020-06-08 14:37:50
【问题描述】:

我执行时手动运行:

python /var/lib/mongodb/script.py >> /var/lib/mongodb/script.log 2>&1

但是使用 cronjob,我看到脚本已执行但 /var/lib/mongodb/script.log 中没有输出

sudo -u mongodb crontab -l
* * * * * python /var/lib/mongodb/script.py >> /var/lib/mongodb/script.log 2>&1

在 /var/log/syslog 上,我看到 cron 已执行,但 /var/lib/mongodb/script.log 中没有输出,并且 script.py 没有运行。

更新:

我尝试了一个 test.py 脚本并且正在工作:

root@jessie:~# ls -al /var/lib/mongodb/test.py -rw-r--r-- 1 root root 184 May 10 13:49 /var/lib/mongodb/test.py

root@jessie:~# sudo -u mongodb crontab -e * * * * * python /var/lib/mongodb/test.py >> /var/lib/mongodb/test.log 2>&1

May 10 14:02:01 jessie CRON[1889]: (mongodb) CMD (python /var/lib/mongodb/test.py >> /var/lib/mongodb/test.log 2>&1)

root@jessie:~# ls -al /var/lib/mongodb/test.log -rw-r--r-- 1 mongodb nogroup 1792 May 10 14:04 /var/lib/mongodb/test.log

test.py 脚本包含:

print "Hello World!" print "Hello Again" print "I like typing this." print "This is fun." print 'Yay! Printing.'

【问题讨论】:

  • 用户mongodb/var/lib/mongodb/script.log 文件有写权限吗?
  • 是的,drwxr-xr-x 2 mongodb mongodb 4096 5 月 8 日 14:20 mongodb
  • 如何设置python的完整路径(即/usr/bin/python)?
  • 我也试过了,同样的行为。它是手动运行的,但不是从 cron 运行的
  • 当您手动说时,我假设您是以mongodb 用户身份运行它,对吧?你的/etc/cron.allow/etc/cron.deny 文件呢?

标签: python mongodb cron


【解决方案1】:

您的.py 文件不可执行;使用 chmod +x 并尝试再次运行 cron 作业。

类似情况here。使文件可执行帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-16
    • 1970-01-01
    • 2018-06-11
    • 2014-06-20
    • 2014-11-01
    • 1970-01-01
    相关资源
    最近更新 更多