Ответы:
Эта программа («Список открытых файлов») .lsof
Если вы просто откроете терминал и напечатаете lsof
, вы получите огромный список всех открытых файлов, вместо этого ограничьте его одной командой, выполнив:
lsof -c gnome-terminal
Вы также можете ограничить свой поиск определенным каталогом, набрав
lsof -c gnome-terminal -a +D /tmp
Или перечислите все открытые файлы в одном определенном каталоге, включая то, что приложение открыло это:
lsof /dev/urandom
Помните, что некоторые процессы запускаются суперпользователем root , вам может потребоваться поставить sudo
перед вашей командой, чтобы получить больше информации об открытых файлах таких процессов.
Чтобы сузить область поиска, вы можете grep
указать конкретные строки, а именно:
lsof /dev/urandom | grep chrome
FD
(File Descriptor) столбец вывода дает информацию о целях программы открытия файла (не обязательно то , что происходит с ним в данный момент):
r
означает, что файл открыт для чтения
w
означает, что файл открыт для записи
u
означает, что файл открыт для чтения и записи
Для более подробной информации обратитесь к странице справочника ( man lsof
). Кроме того, если вам нужно найти какие-либо файлы и каталоги, стандарт иерархии файловых систем Linux очень полезен.
В качестве полной опции over-kill, но работающей в режиме реального времени, вы можете использовать inotify:
sudo inotifywait -m -r /
Обратите внимание, что это займет много памяти и займет много времени для настройки. Как написано на странице руководства:
-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.
Это также не говорит о том, что происходит с файлами, но может помочь определить изменения по мере их возникновения. Использование «-e open» может помочь снизить уровень шума в действительно загруженной системе.