使用debian的朋友经常会发现crontab不执行,或者执行时间错误,今天主机码就遇到了这个情况,很是恼火,google了一圈也没找到办法,最后找到了,下面我们来分析一下为什么debian下不执行。
1.确认手工可以执行
例如 bash /root/zhujima.sh 看看是否执行,再确认脚本中涉及文件路径时写全局路径
2.确认服务正常运行
确认cron运行中,可以执行ps -ef|grep cron 查看是否存在,如果没运行执行service cron restart 重启cron
3.使用ceontab -e添加
使用crontab -e添加,详细参数请查看 Linuxvps定时工具crontab详解
4.检查权限问题
检查脚本是不是设置777权限,如果没有设置,请执行chmod 777 /root/zhujima.sh 设置777
5.设置短时间运行
设置短时间运行,查看能不能运行,如果可以运行就可以确认是时间的问题
6.环境变量没有设置
一些特定代码需要声明变量,比如java等
7.修改时区解决问题
debian中cron会读/etc/timezone来做为时区,我们需要编辑 /etc/timezone,把里面全部删除,然后添加Asia/Shangha,这样是设置为上海时区,最后重启一下cron,再运行看看是否生效。
原文地址:主机码:http://www.zhujima.com/debiancrontab.html 转载请注明