web-dev-qa-db-ja.com

PuTTYは終了時にクラッシュし、コンピューターを再起動する必要があります

プログラムを終了しようとすると、PuTTYがクラッシュします。クラッシュすると、ウィンドウがフリーズし、何があっても閉じません。強制終了は機能せず、タスクマネージャーは機能しません。 pstoolsからのpskill(管理者コマンドプロンプトを使用)は効果がありません。プロセスが強制終了されたと表示されますが、そのままです。コンピュータを再起動する以外は、ウィンドウが消えることはありません。

これは、おそらく最近のWindows Updateが原因で、数週間発生していますが、これは単なる推測です。毎回発生するわけではありませんが、おそらく50%の確率で発生します。 「exit」または「logout」と入力して手動で終了した場合でも、コンピューターがスリープ状態になったために終了した場合でも、クラッシュします。

ポートトンネリングを使用している場合にのみ発生します。常に複数のPuTTYウィンドウを開いており、クラッシュするのはポートトンネルが開いているウィンドウだけです。

最近のクラッシュの前に、PuTTYログを開いて内容を確認しました。最後の行は「サーバーがコマンドの終了ステータス0を送信しました」でしたが、これは正常のようです。

server exit status 0

関連する場合に備えて、ポートトンネリング設定のスクリーンショットを次に示します。

port tunnel D9090

エラーの種類を「AppHangB1」として識別するWindowsエラーボックスは次のとおりです。

enter image description here

グーグルは私にゼロの結果を与えました。このタイプのクラッシュを検索したところ、バグのあるドライバーが原因であることが多いことがわかったので、更新/ロールバックを試みる必要があることを誰かが知っている場合は、これが1つの可能な方法です。

PuTTYを最新バージョンに更新しても効果はありません。私はリモートコンピューター(私が制御している)またはルーターを更新しようとはしていませんが、どちらもWindows自体に関連しているように見えるこの種のクラッシュに関連していないことを願っています。

Windows 7


更新

提案されたデバッグツールを実行しました。これにより、メモリダンプとその分析が生成されました。かなりの情報なので、 ここに表示されているjsfiddle に貼り付けました。以下に要約を引用しましたが、非常に多くの情報があるため、完全なレポートについてはそのページを参照してください。

説明:PuTTY.exe__PID__7768__Date__08_14_2018__Time_02_26_52PM__311__Manual Dump.dmpのスレッド0が所有する0x041916d8で、ブロッキングまたはリークの可能性があるクリティカルセクションを検出しました

このロックの影響:ブロックされたスレッドの25.00%(スレッド2)

次の関数がこのクリティカルセクションに入ろうとしています

mswsock!SockAsyncSelectCompletion + 2a

次のモジュールがこのクリティカルセクションに関係しています。

C:\ WINDOWS\System32\mswsock.dllMicrosoft Corporation


3週間後に更新

クラッシュすることなくほぼ1か月が経過し、その間に別のWindowsUpdateがありました。タイミングは偶然です。これは、夏、おそらく7月のWindows Updateが原因であり、8月の更新で修正されたに違いないと思います。

5
felwithe

PuTTYの構成設定では、「終了時にウィンドウを閉じる」の設定が問題に関与している可能性があるため、他の使用可能な設定をテストしてみてください。

KiTTYMobaXterm 、または Bitvise のいずれかの代替の無料製品を試すこともできます。

選択肢の1つがうまくいく場合は、最初に問題の回避策があります。第二に、問題自体はおそらくリモートコンピュータとのPuTTYの通信プロトコルの問題であり、開発者に問題を報告する必要があります。

ただし、いずれの方法も機能しない場合は、問題はおそらくあなたの側にありません。リモートコンピューター上のSSHサーバーのセットアップを調べてデバッグを試み、確認が必要な場合はここにトレースログを投稿する必要があります。リモートコンピュータを制御できない場合は、管理者に問題を報告してください。

2
harrymc

PuTTYは終了時にクラッシュし、コンピューターを再起動する必要があります

プログラムを終了しようとすると、PuTTYがクラッシュします。クラッシュすると、ウィンドウがフリーズし、何があっても閉じません。強制終了は機能せず、タスクマネージャーは機能しません。 pstoolsからのpskill(管理者コマンドプロンプトを使用)は効果がありません。プロセスが強制終了されたと表示されますが、そのままです。コンピュータを再起動する以外は、ウィンドウが消えることはありません。

私はそれを「クラッシュ」ではなく「ハング」と呼んでいます。クラッシュとは、実行が継続するエラーメッセージを返す(Nice)か、深刻なメモリ破損の場合は一時停止することを意味します(通常は短く、場合によっては多少長く、めったにウォッチドッグではありません)、実行はBSODまたは再起動(ニースではありません)で続行されます。

「ハング」の場合、待機時間は進行を促進しないように見えます。ただし、タスクスイッチャーが影響を受けない場合、他のスレッドは正常に実行され続ける可能性があります。それらに切り替えることができます。

おそらく何が起こったのかというと、PuTTYがトンネリングのためにVPNサブルーチンを生成し、そのプロセスに問題があります。 PuTTYに戻っていないため、PuTTYがハングしています。

他のプロセスでは、一時ファイルまたはポートを開くことができます。 PuTTYの終了mightサブルーチンを十分に閉じますが、ファイルまたはポートのロックをサブプログラムから削除しない可能性があります。

確実に見つける方法-何が起こっているのですか?

そのエラーに関するMicrosoftコミュニティのWebページを読む: " Windows Explorer7が応答していません-'apphangb1Explorer.exe 'エラー "次のように表示されます。

"Andre.Ziegler

Windowsエクスプローラーのハングダンプを作成します。

http://www.msfn.org/board/topic/130005-creating-memory-dumps/

クラッシュダンプを7zまたはRARとして圧縮し、SkyDriveにアップロードして、ここにリンクを投稿します。

ダンプを作成しますが、自分で分析することもできます。または、すべてのSEサイトで重複する質問を検索した後、「。DMPファイルを操作するにはどうすればよいですか?」と質問してください。

Webページへのリンクをたどると: " メモリダンプの作成 "次のようになります。

"ハングしている(クラッシュしていない)アプリケーション/プロセスからのメモリダンプ:

  1. C:\ adplusというディレクトリを作成します

  2. コマンドプロンプトを開き、デバッグツールをインストールしたディレクトリに移動します。デフォルトでは、これは「C:\ Program Files\Debugging ToolsforWindows」です。

  3. コマンドプロンプトに次のコマンドを入力します。

cscript adplus.vbs -hang -pn appname -quiet -o c:\adplus

(ここで、「appname」は、ハングしているアプリケーションの.exe名です)

  1. デバッガーが終了すると(これには時間がかかる場合があります)、コマンドプロンプトウィンドウが閉じ、C:\ adplusフォルダーに分析可能なデータがあります。

クラッシュしている(ハングしていない)アプリケーション/プロセスからのメモリダンプ:

  1. C:\ adplusというディレクトリを作成します

  2. コマンドプロンプトを開き、デバッグツールをインストールしたディレクトリに移動します。デフォルトでは、これは「C:\ Program Files\Debugging ToolsforWindows」です。

  3. コマンドプロンプトに次のコマンドを入力します。

cscript adplus.vbs -crash -pn appname -quiet -o c:\adplus

(ここで、「appname」はクラッシュしているアプリケーションの.exe名です)

  1. 手順3で接続したアプリケーションが最終的にクラッシュすると、デバッガーはプロセスの.dmpファイルを作成します。デバッガーが終了すると(これには時間がかかる場合があります)、コマンドプロンプトウィンドウが閉じ、C:\ adplusフォルダーに分析可能なデータがあります。

このMicrosoftサポートWebページを参照してください: " Debug Diagnostics Tool v1.2が利用可能になりました "ここでは、DebugDiagツールの使用法について説明しています。

それは議論します:

  • メモリダンプの生成:

    • プロセスクラッシュ

    • プロセスのハングまたはパフォーマンスの低下

プロセスのハングやパフォーマンスの低下をデバッグするには、次のいずれかを使用します。

  1. パフォーマンスルールを作成します。パフォーマンスルールは、パフォーマンスカウンターまたはHTTP応答時間に基づくことができます。この後者は、WebサーバーまたはHTTPベースのWebサービスに固有のものです。パフォーマンスカウンタールールを使用すると、1つ以上のパフォーマンスカウンターが指定されたしきい値を超えたときに、一連の連続したユーザーダンプをキャプチャできます。 HTTP応答時間ルールを使用すると、ETW(IIS Webサーバーに固有)またはWinHTTP(任意のタイプのWebサーバーまたはHTTPベースのWebサービスを「ping」する)を使用して、設定されたタイムアウトに達しました。

  2. プロセスビューでプロセス名を右クリックし、[ダンプシリーズの作成]オプションを選択して、低速またはハング状態のときに手動メモリダンプシリーズを作成します。

    次に、結果の.dmpファイルをCrashHangAnalysis.aspまたはPerfAnalysis.asp、あるいはその両方で分析します(以下を参照)。

    • メモリまたはハンドルの使用
  • メモリダンプの分析:

    DebugDiagの最も強力な機能の1つは、メモリダンプを分析し、特定された問題を解決するための推奨事項とともに、分析を示すレポートファイルを生成する機能です。

    DebugDiagは、「分析スクリプト」を使用してメモリダンプを分析します。 DebugDiag 1.2には、次の5つの分析スクリプトが付属しています。

    • クラッシュ/ハングアナライザー-CrashHangAnalysis.asp

    • メモリ圧力アナライザー-DotNetMemoryAnalysis-BETA.asp

    • メモリ圧力アナライザー-MemoryAnalysis.asp

    • パフォーマンスアナライザー-PerfAnalysis.asp

    • SharePointアナライザー-SharePointAnalysis.asp」。

問題が何であれ、正確なポイントを特定し、どのプロセスに問題があるかを見つけてデバッグすることができます。これらのツールの使用について質問がある場合は、遠慮なく確認して新しい質問をしてください。

2
Rob

Winsockフィルターに問題があり、アプリケーションが何らかのドライバー/ IOの問題でロックしているようです。

管理コマンドプロンプトで次のことを試してください:netsh winsock reset次に再起動し、それが違いを生むかどうかを確認します。

私の頭のてっぺんからここに試すべき他のいくつかのことがあります:

  • 未使用のVPNソフトウェアをすべて削除します。

  • ネットワークカードのドライバをアンインストール(および再インストール)します。

  • ネットワークカードのドライバーを更新します。

  • 最近ウイルス対策製品をアンインストールした場合は、ネットワークフィルタードライバーが取り残されている可能性があります。その場合は、適切なセキュリティ製品の削除ツールを見つけて実行することをお勧めします。

0
user2629074