0%

crontab无法运行三解

我们经常可以发现某个shell程序手动运行的是完全正常的,但是放到crontab中却没有定时运行。这个时候我们可以查看下/var/log/cron这个日志文件看看你的应用程序是否被准时调用了。
如果在日志文件中我们没有发现这个应用程序执行的相关日志,那估计你是在crontab中把shell程序路径给写错了。这个时候你就得检查一下路径问题了。
还有一种情况是发现日志当中也有执行的信息,但是我们找不到运行之后的结果。这个时候我一般碰到的就是环境变量的问题。
解决环境变量问题首先可以输入export看下自己的环境变量,如果这里没有,那可以在shell程序头部增加```c

source /etc/profile

最近由于涉及到得shell程序比较多,这些shell本来是在crontab中能够正常执行的,但是在系统重装后这些程序却都不执行了。而系统的环境变量是相同的,这让我想到了是不是crontab自己有一个环境变量。  
搜索了一遍果然发现crontab自己的环境变量设置。```c

vim /etc/crontab
``` 文件中我们就可以看到PATH的设置,这个就是crontab自己的环境变量了。汗死啊!
  • 本文作者: Timo
  • 本文链接: 422.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!