Как посмотреть, когда изменилось разрешение на доступ к папке?
Папка теперь имеет разрешение 777, и я хочу знать, когда для нее запускается команда chmod. Является ли это возможным?
Моя ОС - Ubuntu.
Спасибо.
Как посмотреть, когда изменилось разрешение на доступ к папке?
Папка теперь имеет разрешение 777, и я хочу знать, когда для нее запускается команда chmod. Является ли это возможным?
Моя ОС - Ubuntu.
Спасибо.
Вы можете только прочитать время последнего изменения i-узла с
stat DIRECTORY
Вы не можете видеть, что было изменено, но для папок это должно соответствовать большинство раз.
Если вы хотите контролировать разрешение, используйте задание cron для проверки прав доступа к папке. Что-то вроде
export MYFOLDER=/my/path/to/folder; if [ $(stat -c "%a" $MYFOLDER) != "777" ]; then chmod 777 $MYFOLDER; echo $MYFOLDER permission changed > /var/log/myfolder.log ;fi
ОБНОВЛЕНИЕ: Если вы хотите иметь историю изменений и кто что сделал, то установите AuditD и запустите службу.
Настройте правило для вашей папки:
auditctl -w /tmp/test -p a -k tmp-watch-test
Вы можете увидеть, что происходит с
ausearch -k tmp-watch-test
или же
ausearch -w -f /tmp/test
должен произвести что-то подобное для изменений
type=PATH msg=audit(1496747062.420:20649): item=0 name="/tmp/test" inode=453007 dev=fd:00 mode=040775 ouid=1000 ogid=1000 rdev=00:00 objtype=NORMAL
type=CWD msg=audit(1496747062.420:20649): cwd="/home/myuser/workdir"
type=SYSCALL msg=audit(1496747062.420:20649): arch=c000003e syscall=268 success=yes exit=0 a0=ffffffffffffff9c a1=120c0f0 a2=1ed a3=7ffc37c58930 items=1 ppid=20482 pid=21369 auid=1000 uid=1000 gid=1000 euid=1000 suid=1000 fsuid=1000 egid=1000 sgid=1000 fsgid=1000 tty=pts0 ses=2895 comm="chmod" exe="/usr/bin/chmod" key="tmp-watch-test"
Если вам нужно уведомление об изменениях в режиме реального времени, вы можете использовать inotifywait
из пакета inotify-tools
. В самой простой форме в bash-скрипте:
inotifywait $thewatcheddirectory # will exit if something happens
echo "Something happened to $thewatcheddirectory"
На практике выходные данные inotifywait
намекают на то, что изменилось, и вы можете выбрать, какие события следует проверять.