日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Linux系統(tǒng)下如何保持進(jìn)程在SSH客戶端斷開后仍繼續(xù)運(yùn)行?

更新時(shí)間:

本文介紹在Linux系統(tǒng)的ECS實(shí)例內(nèi),當(dāng)斷開SSH客戶端后,如何保持進(jìn)程繼續(xù)運(yùn)行的解決方案。

使用場景

在Linux系統(tǒng)中,在執(zhí)行一些運(yùn)行時(shí)間比較長的任務(wù)時(shí),必須等待執(zhí)行完畢才能斷開SSH連接或關(guān)閉客戶端軟件,否則可能會(huì)導(dǎo)致執(zhí)行中斷。本文介紹兩種保障程序在您退出登錄后持續(xù)運(yùn)行的方法。

方法一:使用nohup執(zhí)行命令

nohup,可以使運(yùn)行的命令忽略SIGHUP信號。因此,即使退出登錄,程序仍舊會(huì)繼續(xù)執(zhí)行。通常情況下,在nohup命令尾部加上&字符,才能將命令放至后臺(tái)執(zhí)行。具體示例如下所示。

說明

nohup通常用于執(zhí)行無干預(yù)的自動(dòng)化程序或腳本,無法完成帶有交互的操作。

  1. 執(zhí)行如下命令,每秒輸出一行信息。

    bash hello.sh

    系統(tǒng)顯示類似如下。

  2. 使用nohup執(zhí)行命令。

    在命令頭尾分別加上nohup和&,可以看到nohup輸出了一行信息,再Enter鍵就跳回了Shell命令行,此時(shí)命令已經(jīng)在后臺(tái)執(zhí)行了,nohup將命令的輸出重定向至當(dāng)前目錄的nohup.out文件中。同時(shí),nohup會(huì)將對應(yīng)程序的PID輸出,PID可用于需要中斷進(jìn)程時(shí)結(jié)束進(jìn)程。

    說明

    在命令中也可以使用重定向?qū)⒊绦虻妮敵龈臑樽约合胍奈募缦滤荆瑒t程序的輸出就會(huì)寫到hello.log文件中。

    nohup bash hello.sh >hello.log &
    nohup bash hello.sh &

    系統(tǒng)顯示類似如下。

  3. 執(zhí)行如下命令,可以持續(xù)的查看nohup.out的輸出,達(dá)到監(jiān)控程序的效果。

    tail -f nohup.out
  4. 執(zhí)行如下命令,結(jié)束進(jìn)程。

    kill -TRM [$PID]
    說明

    [$PID]為之前nohup命令輸出的值。

方法二:使用screen執(zhí)行命令

GNU Screen一款由GNU計(jì)劃開發(fā)的用于命令行終端切換的軟件,可以當(dāng)做窗口管理器的命令行界面版本。只要Screen本身沒有被終止,在其內(nèi)部運(yùn)行的會(huì)話都可以恢復(fù),特別適合執(zhí)行一些運(yùn)行時(shí)間長的任務(wù)。

  1. 安裝screen工具。

    Linux系統(tǒng)默認(rèn)沒有screen工具,需要先進(jìn)行安裝。

    • CentOS系列系統(tǒng)安裝命令如下所示。

      說明

      CentOS 6與CentOS 8操作系統(tǒng)版本結(jié)束了生命周期(EOL),按照社區(qū)規(guī)則,CentOS 6/8的源地址內(nèi)容已移除。當(dāng)您在CentOS 6/8系統(tǒng)內(nèi)繼續(xù)使用默認(rèn)配置的源地址時(shí)會(huì)發(fā)生報(bào)錯(cuò)。建議您先切換CentOS 6/8的源地址,然后再進(jìn)行操作。具體操作,請參見CentOS 6 EOL如何切換源?CentOS 8 EOL如何切換源?

      yum install screen
    • Ubuntu系列系統(tǒng)安裝

      sudo  apt-get  install screen
  2. 執(zhí)行如下命令,創(chuàng)建screen窗口。

    screen -S [$Name]
  3. 執(zhí)行如下命令,列出screen窗口。

    screen -ls

    系統(tǒng)顯示類似如下。

  4. 當(dāng)需要運(yùn)行腳本、執(zhí)行程序時(shí),在命令前添加screen即可。

  5. 同時(shí)按Ctrl+a+d鍵,就可以退出SSH登錄,但不會(huì)影響screen程序的運(yùn)行。

  6. 需要繼續(xù)工作時(shí),登錄實(shí)例,然后執(zhí)行如下命令,恢復(fù)會(huì)話即可。

    screen -r -d