問題現象:
編寫了一個自動釋放磁盤空間的腳本,並將其加入到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