
Meu diretório de aplicativos é excluído por algum script de shell a cada 3 semanas。 O problema é que esses scripts de shell foram escritos por diferentes membros da equipe e os scripts de shell têm mais de 1k arquivos (cada script tem sua finalidade, mas um bug em algum script leva ao problema).
Tentei pesquisar "rm -rf" nesses scripts, mas ele retornou muitos scripts correspondentes. Exceto audit e inotifywait, há uma maneira de descobrir qual script de shell excluiu meu diretório?
Responder1
Se você quiser saber qual PID e qual comando excluiu um arquivo, você terá que usar o daemon de auditoria. Um link apresentando o conceito está aqui:http://security.blogoverflow.com/2013/01/a-brief-introduction-to-auditd/
Alternativamente, você pode usar algo como NetIQ Sentinel para monitorar seus sistemas. No entanto, isso é caro para um propósito tão único.
Além disso, 1k scripts de shell em um único sistema? Isso é incontrolável. É para isso que servem a conteinerização e a virtualização, ou pelo menos algum tipo de separação/agricultura de carga de trabalho. Você tem tantas coisas acontecendo com esse sistema que está começando a sentir a dor disso.