PHP exec无法通过crontab(cronjobs)工作,但可以通过控制台正常工作

时间:2018-10-12 15:00:26

标签: php cron exec

我尝试通过cron重新启动LTE调制解调器。我有一个带有exec()函数的PHP文件(restart.php):

exec('usb_modeswitch -R -v 12d1 -p 1436');

如果我以根用户身份输入控制台,效果很好:

php restart.php

但不能通过crontab(对于root用户)使用:

*/10 * * * * php /var/www/html/modem/restart.php

我具有restart.php文件的777权限,并且路径正常。

怎么了?以及我该如何解决?有任何想法吗?

请帮助

2 个答案:

答案 0 :(得分:0)

尝试在crontab中为php和php脚本使用完整路径。 您可以通过以下命令找到php二进制文件在哪里:

whereis php

答案 1 :(得分:0)

我向usb_modeswitch添加了完整路径,它解决了我的问题:

exec('/usr/sbin/usb_modeswitch -R -v 12d1 -p 1436');

Rob Ruchte,谢谢您的解决方案