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-toolsinotifywait提供的实用程序将帮助您在不进行轮询的情况下捕获事件:

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

done


SO:inotify - 如何找出哪个用户修改了文件?建议使用审计守护程序来跟踪用户的文件修改。

于 2013-09-25T20:36:10.410 回答