素材牛VIP会员
cron下定时执行python
 sc***29  分类:Python  人气:667  回帖:5  发布于5年前 收藏

corntab -e 写的是这个代码

*/1 * * * * /usr/bin/python  /opt/SendEmail.py >> /opt/SendEmail.log

实验成功是可以在opt目录下每一分钟建立log文件,说明执行成功。但是并没有执行py文件。

测试

root@iZ28i8gjs27Z:~# /usr/bin/python  /opt/SendEmail.py

这样是执行成功,说明python路径没有问题。

提问:
我这样该如何解决?

 标签:linuxpython

讨论这个帖子(5)垃圾回帖将一律封号处理……

Lv5 码农
超***侠 Web前端工程师 5年前#1

看看有没有可能是selinux的问题,我之前也碰到过类似的问题:
http://segmentfault.com/q/1010000000442448

Lv7 码师
un***oo 职业无 5年前#2

目测是没有/opt/目录下写操作的权限.
可以试试/usr/bin/python /opt/SendEmail.py >> /opt/SendEmail.log 是否也能成功.

Lv3 码奴
陈***半 页面重构设计 5年前#3

应该是crontab的权限问题
用crontab -u root -l 看看这个crontab是否挂在root用户下执行的
如果不是挂在root用户下的,可能对/opt目录没有写权限
霸道的做法
chmod -R 777 /opt
同时关掉selinux

Lv2 入门
一***句 职业无 5年前#4

我之前遇到过类似这种问题
你看下/var/log/cron日志命令是否执行
如果看时间确实执行了命令,那你再试试把/usr/bin/python /opt/SendEmail.py命令写到其他脚本里执行(比如说叫a.sh),然后定时去执行a.sh这个脚本

Lv3 码奴
陈***子 PHP开发工程师 5年前#5

*/1 * * * * root /usr/bin/python /opt/SendEmail.py >> /opt/SendEmail.log

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取