问题现象:
编写了一个自动释放磁盘空间的脚本,并将其加入到crontab中。crontab显示以下:
# crontab -l
10 5 * * * bash /home/backup/bin/clear.sh >>/home/backup/log/clear.log 2>&1
然而实际上,该脚本并无按预期天天5点10分执行。bash
问题排查:
1.手动运行命令:
bash /home/backup/bin/clear.sh 脚本执行成功。
2.查看脚本权限:
# ll /home/backup/bin/clear.sh
-rwxr-xr-x 1 root root 540 Dec 20 11:25 /home/backup/bin/clear.sh
拥有可执行权限
3.查看crond进程状态
# service crond status
crond is stopped
总算找到了问题的缘由,原来是crond进程没有启动,启动该进程:
# service crond start
Starting crond: [ OK ]进程
PS:总结crontab任务不执行能够从这些方面入手
1:请确保手工能够执行该文件(给sh文件增长X权限)
2:确认开始crond服务(service crond status/start/stop)crontab