星期四, 三月 24, 2011

快被 linux 的at玩死了

在作公司的產品,其中有一個零件,我要port at到公司的linux 上。

由於整隻linux是學長重新改過的,在生成script的時候,有一個比較特別的地方是,系統的script會在 /tmp/cfg.XXXdfa 之類暫時的資料夾生成。

而我把at port上system 之後,由於我讓at 的指令生成的時間點,正好是script生成的時間點,於是at 就把這個/tmp/cfg.XXXdfa 視為是current directory存下來, 寫到/var/spool/cron/atjobs/下的job define script檔

然後,我的at永遠都不會動,除非我下的時間點是 now。不會動的錯誤訊息是 Execution directory inaccessible

我用console進去 debug時,永遠都會動,因為current directory是 /root