1
Alert when z file on linux server has been changed by x user.
#/bin/sh
old_time=`stat -c %z /var/spool/cron/root` 
  if [[ "$new_time" != "$old_time" ]]; 
    then 
      echo -e "Changes has been made in Cron file" | mail -s "Modification alert" abhinav.dixit@xyz.com 
    echo -e "$old_time" 
    echo -e "$new_time" 
  else 
    echo "no change" 
 fi 

実際、zファイルに変更を加えたユーザーを追跡したいのですが、zファイルにはn人のユーザーがアクセスしています。zファイルが変更されたときにアラートを受け取るために、少なくとも上記のスクリプトを使用しようとしています。どのユーザーが変更したかを追跡する方法がわかりません。

4

1 に答える 1

1

inotify-toolsで提供されるinotifywaitユーティリティは、ポーリングせずにイベントをキャプチャするのに役立ちます。

while inotifywait -e modify /var/spool/cron/root; do

done


SO: inotify - どのユーザーがファイルを変更したかを調べるには? 監査デーモンを使用して、ユーザーによるファイルの変更を追跡することをお勧めします。

于 2013-09-25T20:36:10.410 に答える