Odpowiedzi:
Ten program to („Wyświetl listę otwartych plików”) .lsof
Jeśli po prostu otworzysz Terminal i napiszesz lsof
, otrzymasz ogromną listę wszystkich otwartych plików, zamiast tego ogranicz go do jednego polecenia, wykonując:
lsof -c gnome-terminal
Możesz także ograniczyć wyszukiwanie do określonego katalogu, wpisując
lsof -c gnome-terminal -a +D /tmp
Możesz też wyświetlić listę wszystkich otwartych plików w jednym określonym katalogu, w tym informacje o tym, która aplikacja je otworzyła:
lsof /dev/urandom
Pamiętaj, że niektóre procesy są uruchamiane przez użytkownika root superużytkownika , może być konieczne umieszczenie sudo
przed poleceniem, aby uzyskać więcej informacji o otwartych plikach takich procesów.
Aby zawęzić wyszukiwanie, możesz podać grep
konkretne wiersze, np .:
lsof /dev/urandom | grep chrome
FD
(Plik deskryptora) kolumna wyjściu daje informacje na temat celów programu otwierającego plik (niekoniecznie to, co dzieje się z nim w tej chwili):
r
oznacza, że plik jest otwarty do odczytu
w
oznacza, że plik jest otwarty do zapisu
u
oznacza, że plik jest otwarty do odczytu i zapisu
Aby uzyskać więcej informacji, zobacz stronę podręcznika ( man lsof
). Ponadto, jeśli potrzebujesz wyszukać dowolny z plików i katalogów, bardzo pomocny jest Linux Hierarchy System plików .
Jako kompletną opcję nadmiernego zabijania, ale działającą w czasie rzeczywistym, możesz użyć inotify:
sudo inotifywait -m -r /
Pamiętaj, że zajmie to dużo pamięci i zajmuje dużo czasu, aby skonfigurować. Jak mówi strona podręcznika:
-r, --recursive
Watch all subdirectories of any directories passed as arguments.
Watches will be set up recursively to an unlimited depth. Sym‐
bolic links are not traversed. Newly created subdirectories
will also be watched.
Warning: If you use this option while watching the root direc‐
tory of a large tree, it may take quite a while until all ino‐
tify watches are established, and events will not be received in
this time. Also, since one inotify watch will be established
per subdirectory, it is possible that the maximum amount of ino‐
tify watches per user will be reached. The default maximum is
8192; it can be increased by writing to /proc/sys/fs/ino‐
tify/max_user_watches.
To również nie mówi ci, jaki proces powoduje bałagan w plikach, ale może pomóc w identyfikacji zmian w ich trakcie. Użycie opcji „-e open” może pomóc w zmniejszeniu hałasu w naprawdę obciążonym systemie.