由於各種原因,需要通過ssh登入linux或者unix主機,很多時候我們需要通過ssh的終端啟動一 些服務或者執行一些程式,但是預設情況下,當我們關閉ssh終端連線,隨之啟動的程式也會關閉。原因是:ssh會話關閉時,ssh所關聯的pty關閉,系 統會給這個pty所關聯的session中的所有程序傳送sighup訊號,sighup的預設訊號處理程式是終止程序,除非程序自己處理了 sighup。
解決方法如下:
使用現成的命令nohup,可以讓指定的程式在pty關閉之後繼續執行。
執行方法:
#nohup program &
現在就可以正常關閉ssh了,你會發現你的服務依然存在執行
使用nohup讓SSH客戶端斷開後保持程序繼續執行
本文參考阿里雲幫助中心 nohup可以使後面的命令不會響應結束通話 sighup 訊號。也就是說,通過遠端登入執行nohup命令後,即使退出登入後,程式還是會正常執行。通常情況下,nohup命令最後會跟上 字元,表示將這個命令放至後台執行,這樣才能真正做到將這個命令放至後台持續的執行。具體示例如下所...
通過tmux讓程式在ssh退出後保持執行
ssh遠端登入到linux伺服器,執行乙個程式,在ssh退出時,該程式也將退出。一種解決辦法是通過nohup,此外也可以通過tmux解決該問題,並且每次斷開,再登入ssh都能回到原來的狀態,提供一種比較好的互動體驗。tmux和screen類似,是乙個終端復用器。安裝tmux後,在執行任務前先執行tm...
android 後台應用程序在「當前執行的程序」中
b 問題 b 最近工作用用到了非同步service的非同步程序間通訊,這裡不講這個,要講的是,開發過程中,有個需求是讓我們的apk一直執行在設定 應用程式管理 當前執行的程序中而不是快取程序中。以前沒注意過走一些彎路。color red 遇到的問題是以startservice方式啟動service當...