Linuxに相当するプロセスモニター?


26

GUIでもCUIでも、Process Monitorに相当するUnix / Linuxはありますか?

それが違いを生む場合は、Ubuntuを見ていますが、他のシステム(Mac、Fedoraなどの他のLinuxバリアントなど)に同等のものがある場合は、それらのいずれかを知ることも有用です。

編集:

プロセスモニターはシステムコール(ファイルの作成や書き込みなど)を監視するためのものであり、プロセスエクスプローラーはプロセスステータス(システムモニターのようなもの)を監視するためのものです。後者ではなく前者を求めています。:-)

回答:


12

これに対するコンソールスタンバイはですがtop、私のお気に入りのように、htop表示の柔軟性を少し高め、プロセスでの操作をいくつか許可する代替手段があります。

スクリプトでの使用に適したインタラクティブではないビューは、psプログラムとそのすべての親類です。

編集:明確な質問に基づいて、straceすべての読み取り/書き込み操作とos関数呼び出しを含む、特定のプロセスによって行われたシステムコールの監視を処理することに気付くかもしれません。でs選択したプロセスを押すことで、実行中のプロセスを追跡またはアタッチするプログラムの前にコマンドラインでアクティブ化できますhtop


4
私は信じているtopプロセスと同等であるエクスプローラは、処理していないモニタ、右?
Mehrdad

実行して、manページを調べてみてください。プロセスモニタのリンク先の機能リストを読みましたが、htopブートシーケンスモニタリングを除くすべての詳細をカバーしているように聞こえました。せいぜい、Linuxブートサイクルを介してscreen/ tmux途中でアクティブ化できる場合があります。
カレブ

あなたの他のコメントを踏まえて、あなたも探しているかもしれないstraceあなたから起動することができ、htop押すことで、sあなたが何かを実行するか、プロセスIDとするとき、プロセス上または手動でコマンドラインから。
カレブ

12

すべてのプロセスモニターのおじいちゃんはですtop、そして多くのシステム監視ツールが呼ばれtopます。たとえば、iotopディスクI / Oを監視atopして、大量のシステムリソースpowertopを消費電力を監視します。

より詳細な情報が必要な場合、デフォルトでは追跡されません。特定のプロセスが何をしているかを見るには、straceそれを呼び出します。たとえば、ファイルシステムへのアクセスのみに関心がある場合:

strace -s9999 -efile command_name    # trace a program during its whole execution
strace -s9999 -efile -p1234          # trace a running program with the given PID

straceLinuxに固有ですが、他のシステムには同様のツールがありますtruss。Solaris上、ktraceまたはdtrace* BSD下などです。

特定のファイルまたは特定のディレクトリまたはディレクトリツリーで何が起こっているかを監視するには、inotify機能を使用します。

inotifywait -m .

ここでも、施設は、Linux固有のものですが、他のほとんどのUnix系OSは、同様のシステム、例えば持ったkqueueを * BSDの下で、及びFAM(もともとSGIからではなく、多くのシステムでAPIとして利用できるようになりました)。

Linuxですべてのシステムコールを監視するには、監査サブシステムを使用できます。比較的最近のもので、このトピックに関する文献はあまりありません。マニュアルページを検索auditctlまたは読む。このサイトにファイルアクセスの追跡、プロセス実行の追跡など、いくつかの例がありますauditctl


Process ExplorerではなくProcess Monitorに相当するものを参照しているのですか?
-Mehrdad

@Mehrdad:なるほど、実際の説明ではなく、Windowsで使用したツール(実際にはProcess Explorer)の名前と記憶によって行ったのです。特定のプログラムに相当するものを要求することは常に危険であり、特定の機能を備えたプログラムを要求することはより良いことです。
ジル 'SO-悪であるのをやめる'

ありがとうございました。iotop -o -b -PプロセスがディスクI / O操作を行っている私のショー
バルトロ-otrit

8

lsofおよびをご覧くださいstrace。Sysinternalのプロセスモニターは、実際にはFilemonとRegmonといくつかの追加の機能強化を組み合わせたものです。このtopコマンドは、Process Explorerに似ています。




2

私はそのプロセスモニターを使用していませんが、私が知る限り、それgnome-system-monitorはGnomeシステムと同じです。KDEを使用している場合、おそらく同様のものがあります。


いいえ、違います。プロセスモニターは、プロセス情報を表示するのではなく、実際にシステムコールをフックします。(しかし、あなたが言及していることは、Process Explorerによって達成されます。)
Mehrdad

ああ、よくそのようなことには通常CLIツールvmstatを使用します。しかし、それはシステム単位であり、プロセスごとではありません。
キース

1

dtrace4linuxを使用すると、カーネルのいくつかの興味深い情報をトレースできます。sysdigよりも強力であるように見えますが、残念ながらそれほどうまく動作しません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.