GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Finden Sie heraus, welcher Prozess eine Datei ändert

Sie können auditd verwenden und eine Regel hinzufügen, damit diese Datei überwacht wird:

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

Achten Sie dann darauf, dass Einträge in /var/log/audit/audit.log geschrieben werden .


SystemTap kann dies tun, indem es das inodewatch-Skript .

verwendet

Falls die gesuchten Programme die Datei noch geöffnet haben, können Sie Folgendes verwenden:

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

Sie könnten dies auch in einer kleinen Schleife aufrufen, indem Sie das folgende Skript verwenden getfileusers.sh :

 #!/bin/sh

 FILE=$1

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

und nennen Sie es dann:

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

und prüfen Sie schließlich /tmp/fileusers.log um zu sehen, wer die Datei berührt hat...


Linux
  1. Welcher Prozess hat Pid 0?

  2. Wie finde ich den Prozess mit maximalen Dateideskriptoren?

  3. Was ist ein unterbrechungsfreier Prozess?

  4. Wie finde ich heraus, welcher Prozess eine Datei in Linux gesperrt hat?

  5. Wie finden Sie heraus, welcher Prozess eine Datei in Linux verwendet?

3 Möglichkeiten, um herauszufinden, welcher Prozess auf einem bestimmten Port lauscht

Protokolldateirotation

Linux:Finden Sie heraus, auf welcher Portnummer ein Prozess lauscht

So finden Sie heraus, welcher Prozess eine hohe CPU-Auslastung verursacht

Ist es möglich, einen bestimmten Pfad für einen Prozess vorzutäuschen?

Finden Sie heraus, welcher Prozess eine Datei ändert