客戶端斷開后怎么讓服務器上的后台仍在運行


在linux環境下,客戶端一般使用x-shell客戶端工具開啟服務器上的后台再斷開連接,服務器上的后台也會斷開。

這時候我們需要通過 “nohup  &” 命令來運行后台,讓后台一直處於運行狀態,不跟隨客戶端的斷開而懸掛起來。

每次運行都需要使用“nohup  &” 命令,比較麻煩,我們最好在該后台根目錄的bin子目錄下寫一個startserver.sh的shell腳本,每次只需要在bin下運行"./startserver.sh"命令就可以讓后台一直處於運行狀態了。

startserver.sh的shell腳本內容如下:

  #!/bin/sh
  nohup node ./bin/www &   

shell腳本解釋:

1.在linux中一行開頭的 # 是注釋,但是這里的 #! 不是注釋,而是不可缺少的腳本內容。

2.#!/bin/sh作用是聲明腳本的類型以及在shell中的路徑,告訴解析器應該用哪種解析語言來解析該腳本。

注意:新的腳本寫完后的第一次運行需要使用特別的命令來運行該腳本,否則會出現沒有權限開啟該服務的錯誤。

像這樣的錯誤:nohup: failed to run command `./www': Permission denied     //就是沒有權限的錯誤

解決方法:為該腳本第一次運行賦予權限,具體命令如下:

1)先執行該命令:chmod +x startserver.sh     //命令組成:chmod +x  腳本的名字

2)再執行此命令:nohup node ./www &          //將腳本內的nohup命令語句執行一遍

3)通過命令查看進程:ps -ef|grep node                //命令組成 ps -ef|grep  需要查看的進程名

第二次之后運行腳本就可以直接在他的目錄下使用命令" ./startserver.sh " 即可。

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM