linux後臺執行(nohup)之大坑

問題場景

通過xshell遠程登錄服務器,然後啓動幾個後臺服務,驗證後服務功能都正常,ok!
然後過了一段時間發現服務器有問題,排查之後發現,有一個服務莫名的掛了,通過日誌定位到接收到SIGHUP信號,然後掛了!WTF???

問題分析

確認後臺運行命令:

nohup ./myserver > myout.log 2>&1 &   

沒有問題。
nohup啓動服務後,關閉終端,重新登錄

netstat -ntlp

服務沒了。。。。

解決方案

  1. 臨時解決方案:
    nohup執行命令後

    exit

    安全退出。OK,沒問題了。

  2. 根本解決方案:在程序中捕捉SIGHUP信號

總結

此坑雖小,可不要貪杯啊!分分鐘造成生產事故,頂不住!

參考鏈接:
https://blog.csdn.net/z_ryan/article/details/80952498

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章