2015年3月16日 星期一

[Linux] Crontab低手紀錄(Scrapyd管理)

crontab
說到linux的排程工具,第一個都會想到crontab,crontab的確方便使用,但是剛接觸的時候也是花了不少時間瞭解,紀錄一下最近遇到的狀況,以免自己以後又犯同樣的錯Orz.

Crontab的設計很簡單,用五個時間刻度來執行指令,詳細教學可以看鳥哥的教學.但是我這次在用crontab呼叫shell script卻發生不少白癡問題,上了一課.

為了管理scrapyd,所以需要一支shell script來管理服務的啟動和關閉,一開始是打算從頭自己寫,然後再找資料過程中發現了了這個網頁,可以很簡單的來控制scrapyd.但是當我打算透過crontab來呼叫它時卻發生了一些問題.

  • sh放錯位置:我一開始很新手的在crontab寫路徑\sh run.sh start,這裏要改成sh 絕對路徑\run.sh start

  • 環境問題:run.sh程式可以執行,但是scrapyd無法啟動,後來才發現因為我的scrapyd是灌在virtualenv底下,透過crontab會找不到指令.


因為跟系統不熟,花了將近六小時才把這支程式搞好,紀錄一下血淚教訓.