Linuxには「[123.45.78.901-ma]」というプロセスがあります。ここで、数値は NFS サーバーの IP アドレスです。これらのプロセスが何であるか、そのプロセスに関する情報をどこで見つけることができるか、Web検索に使用できる良いキーワードを知っている人はいますか?
背景:
NFSに何か奇妙なことが起こっているプロセスがコンピュータに見えます。何かがループに閉じ込められて多くのNFS要求(読み取り、更新、および認証)を行うようですが、すべての明白な候補(たとえば、ユーザープログラム)が結果的に終了する可能性があります。
[123.45.78.901-ma]
問題のコンピュータには(非常に短時間の間)多数のプロセスがありますが、動作しているコンピュータにはありません(少なくとも私が検出できるほど長くはありません)。
だからこういう過程が何とか問題に関わったようですが、どういうことなのかわかりません。
「ノンストップ睡眠」プロセスを探している間、
while [ 1 ] ; do ps -w -w -e -o pid,state,tname,time,args| grep ' D ' | grep -v grep; sleep 0.1; done
システムの詳細:
Red Hat Enterprise Linux Workstation バージョン 6.3 (サンディエゴ)
Linux [...] 2.6.32-279.5.1.el6.x86_64 #1 SMP火曜日7月24日 13:57:35 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
よろしくお願いします!
答え1
これらのカーネルスレッドはNFSマウントヘルパーである可能性が高く、新しいNFSマウントがクライアントにマウントされている場合にのみ表示されます。
彼らが中断することなく睡眠状態にある間にそれらを見ることができれば、彼らが寝ていることを見ることができ、/proc/<pid>/stack
それは彼らがやっていることを振り返ることができます。ただし、これにはrootアクセスが必要であり、他の回答に対するあなたの意見で判断した場合、rootアクセス権はありません。
このホストにはこれらのカーネルスレッドが表示されますが、同様に設定された他のカーネルスレッドは表示されない場合、これはこのホストのRPC呼び出しのパフォーマンスが何らかの理由で他のホストよりも低いことを意味します。この問題を引き起こす他のネットワーク問題がありますか?
ちなみに、他のワーカーホストにかかっているNFSマウントを調べている間、同様の結果が得られました。私の場合は、ホストが実行されている特定のバージョンのカーネルのカーネルのバグが原因で、[123.456.78.90-ma]
カーネルスレッドが中断できないスリープ状態に永久に停止しているためです。
答え2
Linuxでは、ps
カーネルスレッドは角かっこで表示されます。これは一般的な意味の「プロセス」ではありません。つまり、実行のためにディスクからロードされた実行可能ファイルはなく、一般ユーザーが所有していません。これはカーネルが後ろで実行する多くのタスクの1つにすぎません。
したがって、表示された名前が必ずしもハードps
ドライブ上のファイルと一致する必要はありません。 (の場合ゾンビプロセスしかし、それは本当です。 )