Файловый монитор (как Filemon Sysinternal) для Linux?


23

Есть ли файловый монитор, похожий на FileMon от Sysinternals, для Linux?

Я знаю об lsof, но это показывает только те файлы, которые были открыты в тот момент, когда я его выполнил.



1
File :: Monitor, FAM, Gamin, inotify и т. Д. Все связаны, но не похожи на то, что просит Саймон. Filemon позволяет вам видеть все файловые операции во всей системе, тогда как File :: Monitor и т. Д. Больше для наблюдения за файловыми событиями в одном файле или каталоге AFAIUI.
— Микель

Ответы:


5

Инструмент, который работает в Linux аналогично программному обеспечению Sysinternals, можно найти здесь: http://temasoft.com/products/filemonitor . Это агентный монитор файлов в реальном времени для Windows и Linux, который может предоставить вам подробную информацию о различных файловых операциях, включая имя пользователя и процесс.

Примечание: я работаю в компании, которая разрабатывает этот продукт.

Скриншот продукта


4

Подсистема аудита может сказать вам все виды вещей.


1
Включая все открытые файлы и ответственные процессы? Есть ли какой-то пользовательский интерфейс для аудита?
— Саймон Эугстер

Аудит работает на уровне ядра, поэтому он ловит все. Там, вероятно, нет пользовательского интерфейса для этого. Вам нужно будет использовать инструменты командной строки или придумать собственный пользовательский интерфейс.
— Игнасио Васкес-Абрамс

Вы можете делать одноразовые запросы, используя ausearchи aureport, но если вам нужна вся информация в режиме реального времени, то вам нужно написать собственную программу. На домашней странице аудита < people.redhat.com/sgrubb/audit > есть больше информации , но сделать это нелегко.
— Микель

2
Почему Linux эквивалентен всему инструменту командной строки, который вы не можете использовать, пока не прочитаете и не перечитаете несколько страниц?
— Питер

Потому что обычно говорят, что команда чрезвычайно мощная и гибкая, и позволит вам «выстрелить себе в ногу».
— LawrenceC

3

Вот еще одно приложение, которое делает что-то связанное: http://archive09.linux.com/feature/124903 . Это называется kfsmd.

Вот пример этого в действии:

$ mkdir /tmp/k
$ cd /tmp/k
$ date > df1.txt
$ date > df2.txt
$ kernel-filesystem-monitor-daemon-cat -v  watch .
setting up watch for:.
setting up watches
calling run
event on wd:1 . filename:df5.txt
CLOSE  URL:./df5.txt
event on wd:1 . filename:df5.txt
DELETE_FILE  URL:./df5.txt

2

В командной строке strace и ltrace могут быть тем, что вы хотите.


Можно ли как-нибудь сделать strace / ltrace для мониторинга всех доступных процессов? Пока мне удалось получить информацию только об одном процессе (-p PID).
— Саймон Эугстер

Нет, вы можете отследить только один процесс (и его
— потомки

2
Ваш ответ без подробностей и трудно понять. Пожалуйста, рассмотрите возможность пересмотра своего ответа, чтобы предоставить более подробную информацию. Например, что именно они делают и как вы их правильно используете?
— Джеймс Мерц

2

SystemTap предоставляет инфраструктуру свободных программ (GPL), чтобы упростить сбор информации о работающей системе Linux. Это помогает диагностировать производительность или функциональную проблему. SystemTap устраняет необходимость для разработчика проходить через утомительный и разрушительный инструмент, перекомпилировать, устанавливать и перезагружать последовательность действий, которая в противном случае может потребоваться для сбора данных.

SystemTap предоставляет простой интерфейс командной строки и язык сценариев для написания инструментария для работающего ядра. Мы публикуем образцы, а также расширяем внутреннюю библиотеку сценариев "tapset", чтобы помочь повторному использованию и абстракции.

Среди других инструментов трассировки / зондирования, SystemTap является инструментом выбора для сложных задач, которые могут потребовать оперативного анализа, программируемого оперативного ответа и символического доступа ко всей системе. SystemTap также может обрабатывать простые задачи трассировки.

http://sourceware.org/systemtap/


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.