Bash: мониторинг, какие файлы используются процессом в режиме реального времени

345
Jezor

Есть ли какая-либо команда для отслеживания того, какие файлы открываются / закрываются / записываются программой с данным PID в режиме реального времени?

Я бы хотел:

  1. запустить программу,
  2. включить мониторинг операций с программным файлом,
  3. делать что-то в программе,
  4. проверьте, какие файлы были изменены во время, когда я сделал что-то.

Мне нужно что-то вроде lsof, но это должно быть добавление информации об операциях в режиме реального времени.

0
Вы рассматривали "strace"? Это даст вам всю эту информацию. John1024 9 лет назад 3
Джон: да, но strace - очень сложный инструмент, и я не знаю, как извлечь данные, которые мне нужны. Jezor 9 лет назад 0
Я согласен с вами, что вывод strace является _ugly_, но `strace` легко запустить, а вывод не так уж сложно интерпретировать. Например, когда строка начинается с `open (`, то файл открывается, когда строка начинается с `write (`, файл записывается в. [Нажмите здесь, чтобы получить пример вывода строк.] (Http : //stackoverflow.com/a/27075334/3030305) Я понимаю, однако, если вы надеетесь найти более удобный и удобный для пользователя инструмент. John1024 9 лет назад 1
Если вы посмотрите на параметры командной строки для `strace`, вы увидите, что вы можете ограничить его вывод; например, только для операций, связанных с вводом / выводом. Scott 9 лет назад 1
Я наконец нашел решение лучше чем strace (в моем случае): https://github.com/ole-tange/tangetools/blob/master/tracefile/tracefile Jezor 9 лет назад 0
@Jezor: Я приглашаю вас (1) прочитать [Как я рекомендую программное обеспечение в моих ответах?] (Http://meta.superuser.com/q/5329/150988), а затем (2) записать свое открытие * как ответ * (ниже). Scott 9 лет назад 0

0 ответов на вопрос

Похожие вопросы