web-dev-qa-db-ja.com

Linuxマシンで新しく生成されたすべてのプロセスを監視する

時々、プロセスが出入りし、私ができるよりも速く進みますps aux、 私は試した watch -d -n0.1 "ps aux | tail"ですが、これも1/10秒に制限されています。私が本当に望んでいるのは、コマンドを実行し、すべての新しいプロセスを1行に1つずつ実行することです。高速に実行されるプロセスでさえ。私はstraceがこれに類似した能力を持っていることを知っていますが、私が望んでいることを実行することができませんでした。

tl;dr:すべての新しいプロセスをログに記録する方法はありますか?

知りたくありません。ps auxを指定すると、現在のケースでは、別のプロセスによって生成されて表示されなくなるプロセスがあるので、実行できるようにしたいのですが、コマンドがどうなるかわかりません。新しいPIDを知っていても十分です。これらを取得してps | grepこれらについて説明し、プロセスの実行中に詳細情報を提供します(うまくいけば、プロセスがpsになってもまだ残っていると想定しています)

12

これらのプロセスについて何を知りたいですか?プロセスを生成するユーザーを制御できる場合は、strace -feprocess $Shell しましょう。

フットプリントの概要だけの場合は、プロセスアカウンティング(gnu acctパッケージ内、lastcommコマンドを使用)、またはatopのロガーモードなどの高レベルツールを使用します。将来的には、 trace やuprobesなどのツールがカーネルから詳細な情報を取得するのに役立ちます。

7
Tobu

Snoopy は、ユースケースに適したツールかもしれません。

シンプルなロガーが必要で、セキュリティ/監査ソリューションを探していない場合は、Snoopyが最適です。

開示:スヌーピーのメンテナはこちら。

1
Bostjan Skufca
1
cheeseprocedure