SSHで中断されたプロセスを終了する方法は?

SSHで中断されたプロセスを終了する方法は?

Amazon AWS で実行される仮想マシンと SSH セッションがあります。

私が実行しているプログラムの1つがSSH端末を停止して停止します。

Enterだから~++を入力しました。.

マイコンピュータに接続しようとすると、接続がタイムアウトしたというメッセージが表示されます。

  1. これは、接続がクライアントでのみ終了し、サーバーでまだアクティブであることを意味しますか?では、どのように新しい接続を作成できますか?
  2. Ctrl+ CSSHシェルでは機能しません。これは、SSHセッションを終了せずに保留中のコマンドを終了できないことを意味しますか?

答え1

SIGSTOPをプロセス(ほとんどのシェルはCtrl-Zこの目的で使用)に送信できます。これは現在のプロセスに現在の状態を一時停止するように指示します。その後、シェルのコマンドプロンプトに戻ります。その後、このコマンドを使用して一時停止した操作を確認し、jobsこのkillコマンドを使用してプロセスを終了できます。プロセスが出力リストの最初の場合は、kill -TERM%1を実行して、そのプロセスが消えたかどうかを再確認してくださいjobsjobsあなた可能SIGKILL( kill -KILL %1) を送信する必要があります。

ジョブ制御の簡単なガイドは、以下にあります。

http://en.wikibooks.org/wiki/A_Quick_Introduction_to_Unix/Job_Control

答え2

への接続が終了すると、~.サーバーはすぐにそれを知らない可能性があります。結局、Keepaliveメッセージ(「お客様、しばらくニュースを聞いていません。まだそこにいますか?」)を送信して応答がないことを検出し、端末を閉じてSIGHUPをフォアグラウンドプロセスに送信します。グループリーダー。

Ctrl+ CSSHなしでSSHを介して動作します。

プロセスの競合のため、新しい接続を開くことはできません。

説明した症状で判断すると、何らかの理由で仮想マシン全体がオフラインになります。おそらく、OSがクラッシュした可能性があり、ネットワーク設定が破損している可能性があり、ファイアウォールがユーザーをブロックしている可能性があり、AmazonがアカウントとVMをシャットダウンした可能性があります。これで、VMがアクセスできないことがわかります。管理コンソールで手がかりを確認してください。仮想マシンが実行されているように見えても実行されない場合は、Amazonサポートにお問い合わせください。

関連情報