2008-09-24 14 views

回答

2

你也許不能得到一個明確的答案,因爲我們通常既結束了:該過程必須守護進程本身的能力和過程監控有守護進程的兒童的能力。

個人而言,我更喜歡有過程監控器或腳本做到這一點,有幾個原因:
1.如果進程監視器希望密切關注它的兒童重新啓動他們,如果他們死了,就可以選擇不守護進程它們。當其中一個子進程退出時,SIGCHLD將被傳遞給監視器。在嵌入式系統中,我們做了很多。
2.通常當守護進程時,您還設置euid和egid。我更喜歡不要將每個子進程都編碼爲像使用uids這樣的系統級策略的知識。
3.允許重複使用相同的應用程序無論是作爲命令行工具或一個守護進程(我坦率地承認,這在實際中很少發生)的。

1

我會說這是更好地爲你的腳本來做到這一點。我不知道你的流程監控工具,但我認爲用戶可能會使用替代工具,這意味着使用該腳本會更好。

如果你能想象在非守護方式運行腳本,我想補充一個選項,該腳本可以啓用或禁用系統守護進程。

相關問題