Se você está preocupado apenas com arquivos sendo adicionados ou removidos, você pode usar uma combinação de encontrar e diferenciar para monitorar as alterações: -
find /some/dir -print > file-list.expected # baseline
# Add/remove files
find /some/dir -print > file-list.current
diff file-list.expected file-list.current # look for changes
mv file-list.old file-list.new # update baseline (optional)
No entanto, se você precisa (ou quer) saber se o conteúdo de um arquivo também foi modificado, o FreeBSD vem com um utilitário chamado [mtree] [1] que pode ser usado para relatar quaisquer mudanças encontradas entre um diretório hierarquia e uma linha de base esperada: -
mtree -c -i -n -K cksum -p /some/dir > baseline.mtree # baseline
# Add/remove/change files
mtree -f baseline.mtree -p /some/dir # look for changes
mtree -c -i -n -K cksum -p /some/dir > baseline.mtree # update baseline (optional)
Para qualquer método, pode ser prudente tornar seu arquivo de linha de base imutável ("chflags uchg baseline.file"), o que deve ajudar a impedir a exclusão acidental de seus arquivos por qualquer pessoa que não seja root (incluindo você).