Solaris에서 누가 또는 무엇(서비스)이 특정 파일이나 폴더를 삭제했는지 어떻게 알 수 있습니까?

Solaris에서 누가 또는 무엇(서비스)이 특정 파일이나 폴더를 삭제했는지 어떻게 알 수 있습니까?

이에 대한 정보를 제공할 수 있는 도구나 로그가 있습니까? 또한 위의 내용을 알 수 있는 방법이 없다면... 누군가 또는 일부 서비스가 폴더를 삭제하려고 할 때 알려주는 작업을 수행할 수 있습니까?

답변1

이 작은 Dtrace 스크립트는 시스템의 모든 파일 삭제를 쉽게 기록합니다.

dtrace -qn 'syscall::unlink*:entry { printf("%d, %s, %s\n", uid, execname, copyinstr(arg0));}
syscall::fsat:entry  /arg0 == 5 / { printf("%d, %s, %s\n", uid, execname, copyinstr(arg2));}'

답변2

AFAIK에는 "기본" 솔루션이 없지만 파일 시스템 이벤트에 대한 이벤트 기반 파일 감시자를 사용할 수 있습니다(디렉토리에 있음). 그런 다음 핸들과 일치하는 문제가 되는 프로그램을 찾습니다.

그러한 애플리케이션이 필요한 경우, 그러한 애플리케이션이 필요한 유일한 사람은 아니기 때문에 StackOverflow에 문의해 볼 가치가 있습니다.

관련 정보