如何在SSH斷開後讓遠程服務器程序繼續運行

    主要參考來自:http://blog.csdn.net/wind19/article/details/4986458

    今天在一個技術羣中看到有人在討論這個問題,剛好手頭上正在做物聯網項目,也遇到這麼個問題,只是之前一直在測試階段,沒怎麼把這個問題放在心上,斷了重新連接就可以了,只是麻煩一點罷了。不過過陣子要出差,後面還要演示,不可能再繼續這樣一直用SSH連着重新啓動各種遠程程序,該準備的還是先準備好,以防到時出錯,所以剛剛特意就這個問題搜了一下解決方法。

    有兩種方法:一是用nohup命令,另一種是用screen工具。因爲nohup比較方便,所以採用這種方法,關於screen的具體用法,可以參考上面的博文。

    當SSH網絡斷開後,會向該連接相關所有會話進程發一個SIGHUP信號,收到這個信號的進程默認是終止運行,nohup命令的作用就是讓進程不接收到該信號,這樣就可以在SSH斷開後保證程序繼續運行。同時如果該程序有標準輸出,則使用nohup命令後,輸出會自動被重定向到該程序的目錄下的nohup.out文件中,如果當前目錄的nohup.out文件不可寫,則會重定向到$HOME/nohup.out文件中。

發佈了30 篇原創文章 · 獲贊 66 · 訪問量 65萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章