Nohup-バックエンド・デーモン

6820 ワード

コマンドをバックグラウンドに配置して実行するには、nohup sh command&
なぜnohup?
Scrtという端末ツールを使って終了すると、現在のshellで起動しているプロセスにSIGHUP信号が発生するので、
一方、SIGHUP信号のデフォルト動作時にはプロセスが終了するので、nohupはSIGHUP信号を遮断することを意味する.
次のテストを行います.
           nohup     
[root@limt ~]# sh  Testlsof.sh > 111.log &
[1] 4486
[root@limt ~]# jobs
[1]+  Running                 sh Testlsof.sh > 111.log &
             
[root@limt ~]# ps -ef|grep Testlsof
root      4486  4315  0 20:11 pts/1    00:00:00 sh Testlsof.sh
root      4574  4500  0 20:12 pts/0    00:00:00 grep Testlsof
       ,       
[root@limt ~]# ps -ef|grep Testlsof
root      4661  4500  0 20:12 pts/0    00:00:00 grep Testlsof
 
          nohup     
[root@limt ~]# nohup sh Testlsof.sh > 111.log &
[1] 2710
[root@limt ~]# nohup:                
[root@limt ~]# jobs
[1]+  Running                 nohup sh Testlsof.sh > 111.log &
             
[root@limt ~]# ps -ef|grep Testlsof
root      2710  2664  0 20:23 pts/1    00:00:00 sh Testlsof.sh   //    shell
root      2794  2728  0 20:23 pts/2    00:00:00 grep Testlsof
       ,        
[root@limt ~]# ps -ef|grep Testlsof
root      2710     1  0 20:23 ?        00:00:00 sh Testlsof.sh   <span style="font-family: Arial, Helvetica, sans-serif;">//    init  </span>
root      3223  2728  0 20:23 pts/2    00:00:00 grep Testlsof

 
PSはLINUXで最もよく使われる非常に強力なプロセス表示コマンドです
一般的な使用方法は、プロセスが存在するかどうかを確認することです.
//次のコマンドはjavaプロセスが存在するかどうかを確認します.ps-ef|grep java
1.ps紹介
プロセスのモニタリングと制御を行うには、まず現在のプロセスの状況を理解する必要があります.つまり、現在のプロセスを表示する必要があります.psコマンドが最も基本です.
非常に強力なプロセス表示コマンドでもあります.このコマンドを使用して、実行中と実行中のプロセスのステータス、プロセスが終了したかどうか、
プロセスが硬直しているかどうか、どのプロセスが多くのリソースを占有しているかなど.要するに、ほとんどの情報は、このコマンドを実行することによって得ることができる.
2.psコマンドとそのパラメータ
psコマンドは、スクリーンキーボードなどの標準入力/出力設定とは異なるため、バックグラウンドプロセスの動作を監視するのに最も一般的です.
通信の準備ができているので、その状況を検出する必要がある場合はpsコマンドを使用できます.
このコマンドの構文形式は次のとおりです.
ps[オプション]
コマンド・オプションについて説明します.
-eすべてのプロセスを表示します.
-fフルフォーマット.
-hタイトルは表示されません.
-l長フォーマット.
-w幅出力.
a端末上のすべてのプロセスを表示し、他のユーザのプロセスを含む.
r実行中のプロセスのみを表示します.
x端末を制御していないプロセスを表示します.