Próbuję znaleźć niezawodny sposób znalezienia, który proces na moim komputerze zmienia plik konfiguracyjny ( /etc/hosts
a konkretnie).
Wiem, że mogę użyć, lsof /etc/hosts
aby dowiedzieć się, jakie procesy aktualnie otwierają plik, ale to nie pomaga, ponieważ proces oczywiście otwiera plik, zapisuje do niego, a następnie zamyka go ponownie.
Patrzyłem również na lsof
opcję powtarzania (-r), ale wydaje się, że idzie ona tak szybko, jak raz na sekundę, co prawdopodobnie nigdy nie uchwyci trwającego zapisu.
Znam kilka narzędzi do monitorowania zmian w systemie plików, ale w tym przypadku chcę wiedzieć, który proces jest odpowiedzialny, co oznacza złapanie go w akcie.
źródło
ausearch
zawsze wraca<no matches>
Możesz także użyć narzędzi inotify:
źródło
Po wielu poszukiwaniach znalazłem rozwiązanie, wystarczy użyć tego polecenia:
sudo fs_usage | grep [path_to_file]
źródło
prawdopodobnie lepiej wtedy użyć czegoś takiego jak incron
http://inotify.aiken.cz/?section=incron&page=about&lang=en
możesz go następnie uruchomić w celu wywołania skryptu w celu uzyskania pewnego rodzaju diag
źródło