服務(wù)器維護實用技巧:簡單而有用的nohup命令介紹
2020-05-16 18:21 作者:admin 瀏覽量:
服務(wù)器維護實用技巧:簡單而有用的nohup命令介紹
如何做好服務(wù)器維護?北京艾銻無限科技與你談?wù)処T人員必須知道的服務(wù)器維護信息
服務(wù)器維護小知識簡單而有用的nohup命令在UNIX/LINUX中,普通進程用&符號放到后臺運行,如果啟動該程序的控制臺logout,則該進程隨即終止。
要實現(xiàn)守護進程,一種方法是按守護進程的規(guī)則去編程(本站有文章介紹過),比較麻煩;另一種方法是仍然用普通方法編程,然后用nohup命令啟動程序:
nohup<程序名>&
則控制臺logout后,進程仍然繼續(xù)運行,起到守護進程的作用(雖然它不是嚴格意義上的守護進程)。
使用nohup命令后,原程序的的標準輸出被自動改向到當(dāng)前目錄下的nohup.out文件,起到了log的作用,實現(xiàn)了完整的守護進程功能。
ygwu @ 2005年04月18日 上午10:03
For example:
服務(wù)器維護小知識如何遠程啟動WebLogic服務(wù)?
用telnet遠程控制服務(wù)器,遠程啟動WEBLOGIC服務(wù),啟動后關(guān)閉telnet,WebLogic服務(wù)也跟著停止,這是因為使用telnet啟動的進程會隨著telnet進程的關(guān)閉而關(guān)閉。所以我們可以使用一些UNIX下的命令來做到不關(guān)閉。
使用如下命令:
nohup startWeblogic.sh&
服務(wù)器維護小知識如果想要監(jiān)控標準輸出可以使用:
tail -f nohup.out
當(dāng)在后臺運行了程序的時候,可以用jobs命令來查看后臺作業(yè)的狀態(tài)。在有多個后臺程序時,要使用來參數(shù)的fg命令將不同序號的后臺作業(yè)切換到前臺上運行。
當(dāng)用戶啟動一個進程的時候,這個進程是運行在前臺,使用與相應(yīng)控制終端相聯(lián)系的標準輸入、輸出進行輸入和輸出。即使將進程的輸入輸出重定向,并將進程放在后臺執(zhí)行,進程仍然和當(dāng)前終端設(shè)備有關(guān)系。正因為如此,在當(dāng)前的登錄會話結(jié)束時,控制終端設(shè)備將和登錄進程相脫離,那么系統(tǒng)就向所有與這個終端相聯(lián)系的進程發(fā)送SIGHUP的信號,通知進程線路已經(jīng)掛起了,如果程序沒有接管這個信號的處理,那么缺省的反應(yīng)是進程結(jié)束。因此普通的程序并不能真正脫離登錄會話而運行進程,為了使得在系統(tǒng)登錄后還可以正常執(zhí)行,只有使用命令nohup來啟動相應(yīng)程序。
服務(wù)器維護小知識使用命令nohup當(dāng)然可以啟動這樣的程序,但nohup啟動的程序在進程執(zhí)行完畢就退出,而常見的一些服務(wù)進程通常永久的運行在后臺,不向屏幕輸出結(jié)果。在Unix中這些永久的后臺進程稱為守護進程(daemon)。守護進程通常從系統(tǒng)啟動時自動開始執(zhí)行,系統(tǒng)關(guān)閉時才停止。
在守護進程中,最重要的一個是超級守護進程inetd,這個進程接管了大部分網(wǎng)絡(luò)服務(wù),但并不是對每個服務(wù)都自己進行處理,而是依據(jù)連接請求,啟動不同的服務(wù)程序與客戶機打交道。inetd支持網(wǎng)絡(luò)服務(wù)種類在它的設(shè)置文件/etc/inet.conf中定義。inet.conf文件中的每一行就對應(yīng)一個端口地址,當(dāng)inetd接受到連接這個端口的連接請求時,就啟動相應(yīng)的進程進行處理。使用inetd的好處是系統(tǒng)不必啟動很多守護進程,從而節(jié)約了系統(tǒng)資源,然而使用inetd啟動守護進程相應(yīng)反應(yīng)會遲緩一些,不適合用于被密集訪問的服務(wù)進程。
以上內(nèi)容為艾銻無限為大家提供的服務(wù)器維護小知識,更多內(nèi)容請關(guān)注:www.bjitwx.com。