2012-01-06 33 views
0

我用C寫的一個守護進程,它使用的守護進程()調用。新貴不重生守護

我想新貴重生這應該意外失敗。

我使用的是一個相當舊版本的新貴,0.3.9的,在Ubuntu 8.04。

我創建以下文件(/etc/event.d/my-daemon):

start on startup 
stop on shutdown 
respawn 
daemon 
exec /usr/bin/my-daemon 

狀態:

# status my-daemon 
my-daemon (stop) waiting 

開始:

# start my-daemon 

my-daemon (start) waiting 
my-daemon (start) starting 
my-daemon (start) pre-start 
my-daemon (start) spawned, process 32631 
my-daemon (start) post-start 
my-daemon (start) running 

它顯示了當按預期做ps aux | grep my-daemon。然後我使用kill -9將它殺死,期待它重生,但發佈ps aux後再沒有顯示任何內容。做status my-daemon我得到:

my-daemon (start) running 

任何想法?

回答

0

我不認爲0.3.9處理守護進程預期(是與它周圍等待SIGCHLDs)。對我來說一個解決方法就是不進行後臺/守護進程和重生工作。