0

FreeBSD システムで実行されるすべてのコマンドを監視しようとしています。BSD でプロセス アカウンティング機能を使用する lastcomm については既に確認しました。残念ながら、実行される各コマンドの最初の 10 文字しか保存されません。CLI パラメータを含むコマンド全体が理想的です。

また、入りたくない理由により、私はここで FreeBSD 4.x システムに取り組んでいるので、"auditd" やそのような機能にアクセスできるとは思いません。

/proc には必要な情報がすべて含まれていますが、新しいノードの作成と削除について procfs を監視する適切な方法を見つけることができません。

編集:入力していただきありがとうございます。残念ながら、これらは FreeBSD 4.x システムであると述べたので、dtrace はオプションではありません。次に、/proc の変更時刻を確認しました。kqueue は、どのファイルが変更されたかを具体的に示していないだけです。

4

2 に答える 2

1

/proc新しいプロセスが作成された場合、変更時刻が変更されるかどうかを確認しますか?


または、次のループを実行します。PID を格納するには、リストまたは配列が必要です。

  • kvm_getprocs( のop引数を指定して) を呼び出して、実行中のすべてKERN_PROC_PROCのプロセスに関する情報を取得します。
  • すでに知っているすべての PID をスキップします。
  • すべての新しい PID を PID のリストまたは配列に追加します。新しいプロセスから必要な情報を使用してください。
  • リストから終了したすべてのプロセスをパージします。
于 2013-03-13T00:11:23.627 に答える
1

dtrace機能を調べます。必要な機能を備えていると思いますが、ログに記録したいものすべてをログに記録すると、システムがかなり遅くなる可能性があることに注意してください。

于 2013-08-05T17:32:04.673 に答える