2012-01-06 85 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)。对我来说一个解决方法就是不进行后台/守护进程和重生工作。