crontab自定義腳本執行失敗,但是手動執行是成功的

問題:自己寫了個kubectl命令刪除失敗pods的腳本,然後crontab自動執行總是失敗。
分析:
[root@k8s-master-1 lyf]# which kubectl
/usr/local/bin/kubectl

[root@k8s-master-1 lyf]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

[root@k8s-master-1 lyf]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
可以發現cron的環境變量少了/usr/local/bin /usr/local/sbin/ 以及/root/bin
解決:
在腳本里加入一行
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章