Posted on 2008-03-18 15:44
Fingki.li 閱讀(2057)
評論(0) 編輯 收藏 所屬分類:
About linux
在UNIX/LINUX中,普通進程用&符號放到后臺運行,如果啟動該程序的控制臺logout,則該進程隨即終止。
要實現守護進程,一種方法是按守護進程的規則去編程;另一種方法是仍然用普通方法編程,然后用nohup命令啟動程序:
nohup<程序名>&
則控制臺logout后,進程仍然繼續運行,起到守護進程的作用(雖然它不是嚴格意義上的守護進程)。
使用nohup命令后,原程序的的標準輸出被自動改向到當前目錄下的nohup.out文件,起到了log的作用,實現了完整的守護進程功能。
For example:
用telnet遠程控制服務器,遠程啟動Tomcat服務,啟動后關閉telnet,Tomcat服務也跟著停止,這是因為使用telnet啟動的進程會隨著telnet進程的關閉而關閉。所以我們可以使用一些UNIX/LINUX下的命令來做到不關閉。
使用如下命令:
nohup startup.sh&
如果想要監控標準輸出可以使用:
tail -f nohup.out