在Debain的docker中啟用crontab,有問題處理了一天,特地記錄一下。 Debain和ubuntu差不多,故算在ubuntu下面了。
1.第一個問題,安裝crontab
#apt-get install cron
看清楚了,是cron,不是crond啊!在centos下安裝需要的vixie-cron之類的東西也根本不需要啊!在網路上各種適用於centos的教學真是把我坑慘了!記住,在ubuntu下只需要上面一個指令就夠了!
2.啟動crontab服務
/etc/init.d/cron status #查看状态 /etc/init.d/cron restart #启动服务
查看狀態用ps -ef|grep cron也行,啟動服務用service start cron也行。只要記住一點,是cron不是crond!crond是centos用的。
3.針對docker,如果用的不是docker就可以跳過這一步了
#修改/etc/pam.d/cron文件,將其中的required改為sufficient,然後重啟cron服務:/etc/init.d/cron restart
4.腳本中必須用絕對路徑
無論是shell腳本或python腳本,裡面所有的路徑一定都是絕對路徑!
5.導入需要的環境變數
範例
0 8 * * * . /etc/profile; /bin/sh /home/abc/test.sh 0 8 * * * /bin/usr/python2.7 /home/abc/test.py
這些都ok了應該就沒問題了。
以上是解決ubuntu中無效的crontab問題的詳細方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!