Wiem, że używam lsof do sprawdzania plików, do których aktualnie uzyskuje dostęp proces. Czy istnieje sposób, aby zobaczyć wszystkie pliki, które aplikacja otwiera w ciągu swojego życia?
Wiem, że używam lsof do sprawdzania plików, do których aktualnie uzyskuje dostęp proces. Czy istnieje sposób, aby zobaczyć wszystkie pliki, które aplikacja otwiera w ciągu swojego życia?
Odpowiedzi:
Użycie polecenia strace może być możliwe przy pomocy czegoś takiego:
strace -e trace=open program [arguments]
strace -e trace=open program [arguments] | grep -v ' = -1 ENOENT'
mogłoby poprawić sytuację, ale to też nie jest prawda. Ten ostatni nie wykryje niedokończonych, a następnie wznowi połączenia z open
.
openat
.
Nie jestem pewien, czy zrozumiałem dokładnie, co chcesz z tym zrobić. Ale czy zastanawiałeś się nad strace? Wyświetla wszystkie wywołania systemowe, w tym pliki.
EDYCJA: Nie zapomnij o opcji -f, która pozwala śledzić rozwidlone procesy.