GNU/Linux >> Linux の 問題 >  >> Linux

ファイルを変更しているプロセスを見つける

auditd を使用して、そのファイルを監視するルールを追加できます:

auditctl -w /path/to/that/file -p wa

次に、エントリが /var/log/audit/audit.log に書き込まれるのを監視します .


SystemTap は inodewatch スクリプトを使用してこれを行うことができます。


探しているプログラムがまだファイルを開いている場合は、次を使用できます:

 sudo lsof /path/to/file/being/modified

次のスクリプト getfileusers.sh を使用して、これを小さなループで呼び出すこともできます。 :

 #!/bin/sh

 FILE=$1

 while true; do
    lsof "${FILE}"
 done > /tmp/fileusers.log

そしてそれを呼び出します:

 sudo ./getfileusers.sh /path/to/file/being/modified

そして最終的に /tmp/fileusers.log を調べます 誰がファイルに触れたかを確認するには...


Linux
  1. Firefoxのログファイルを見つけますか?

  2. 最大のファイル記述子を持つプロセスを見つける方法は?

  3. Linux のファイル アクセス コマンド – find、sort、head、tail

  1. 中断できないプロセスとは何ですか?

  2. Linux でどのプロセスがファイルをロックしているかを調べるにはどうすればよいですか?

  3. 標準出力のローテーションをログに記録しますか?

  1. ファイルを作成しているプロセスを特定する方法は??

  2. ログファイルを作る

  3. 高CPU使用率を引き起こしているプロセスを見つける方法