クラウドサーバー ECS Linux システムでは、通常、実行に時間がかかるタスクを実行する場合、実行が完了するまで待ってから SSH 接続を切断したり、クライアント ソフトウェアを閉じたりする必要があります。そうしないと、実行が中断される可能性があります。 。この記事では、ユーザーがログアウトログインした後もプログラムが実行し続けることを保証するためのいくつかの方法を紹介します。
管理端末を介してサーバーのローカルセッション(コンソール)ポートにログインします。この端末で実行されるプログラムは、SSHログインユーザーの終了の影響を受けません。具体的な操作方法は以下の通りです。
1. 管理端末からサーバーにログインします。
2. 必要なプログラムまたはスクリプトを実行します。
3. 次回タスクの実行ステータスを確認する必要がある場合は、再度管理端末に接続して確認してください。
操作例: 1. 通常の実行コマンドは
bash hello.sh で、実行結果は 1 秒あたり 1 行を出力する小さなプログラムです:
nohup bash hello.sh & に変わります。この時点で、nohup が 1 行の情報を出力することがわかります。コマンドはバックグラウンドで実行され、nohup はコマンドの出力を現在のディレクトリの nohup.out ファイルにリセットします。また、nohup は、対応するプログラムの PID を出力するので、プロセスを中断する必要がある場合、その PID を使用してプロセスを強制終了できることにも注意してください。
3.tail -f nohup.out を使用すると、nohup.out の出力を継続的に表示して、プログラムを監視する効果を得ることができます。
4. コマンドでリダイレクトを使用して、プログラムの出力を必要なファイル名に変更することもできます (nohup bash hello.sh >hello.log &)。プログラムは hello.log ファイルに書き込まれます。
5. プログラムが自動的に終了しない場合は、kill コマンドを使用してプロセスを終了する必要があります。たとえば、コマンド kill -TRM
使用制限:
nohup は通常、介入なしで自動化されたプログラムまたはスクリプトを実行するために使用され、対話しながら操作を完了することはできません。yum インストール画面
sudo apt-getインストール画面
screen -S name # name可以设置为ssh、ftp,用于标注该 screen 窗口用途 # 示例:screen -S ftp
その後、スクリプトの実行、プログラムの実行など、必要な操作に進みます。
3. 終了して保存します
上記の FTP 操作の例では、転送を開始し、ウィンドウで Ctrl+A キーを入力します。次に d キーを押して SSH ログインを終了しますが、画面プログラムの実行には影響しません。 4. セッションを保存して実行を続行します screen 機能を使用してリモート セッションを管理できます。操作手順の概要: サーバーへの通常のSSHログイン
以上がLinux で SSH クライアントが切断された後もプロセスを実行し続ける設定方法の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。