0
如何啓動多個守護進程,它們是「不是」它們是不同守護進程的實例。我已經使用了下面的腳本,但是在停止守護進程並重新啓動之後,啓動時會掛起。啓動和停止多個守護進程
#ubuntu upstart script for antkorp services
description "Antkorp colloboration and communication platform"
author "www.antkorp.in"
task
start on runlevel [2345]
stop on runlevel [016]
pre-start script
logger -t "antkorp:" "antkorp platform booting...";
end script
post-start script
logger -t "antkorp:" "antkorp platform started successfully.";
end script
pre-stop script
logger -t "antkorp:" "antkorp platform stopping..";
end script
post-stop script
logger -t "antkorp:" "antkorp platform stopped successfully.";
end script
這裏是一個守護進程的init文件。
description "antkorp gw daemon"
start on starting akorp
stop on stopping akorp
expect fork
respawn
pre-start script
logger -t "gw:" "antkorp gw daemon about to start.";
end script
exec /home/rk/gw
post-start script
logger -t "gw:" "antkorp gw daemon started successfully.";
end script
pre-stop script
logger -t "gw:" "antkorp gw daemon stopping ...";
end script
post-stop script
logger -t "gw:" "antkorp gw daemon stopped.";
end script
manual'stop'work fine but'start'hangs。請指教。
這裏是守護進程的源代碼。
#include<stdio.h>
#include<unistd.h>
#include<signal.h>
#include<stdlib.h>
void
sigterm_handler(int signo)
{
exit(1);
return;
}
int
main(int ac, char **av)
{
signal(SIGTERM, sigterm_handler);
daemon(0,0);
while(1) sleep(1);
return 0;
}
我使用'守護進程'功能來守護進程。您可以在守護程序配置文件中看到'expect fork'。 –
「sudo stop gw」和「sudo start gw」命令可以正常工作。 –