Написание драйвера перехвата действий ФС

Взгляд изнутри

Модератор: Модераторы разделов

Ответить
zvoice
Сообщения: 97
ОС: Ubuntu Gutsy/ Debian Etch(XEN)
Контактная информация:

Написание драйвера перехвата действий ФС

Сообщение zvoice »

Вопрос вот в чем - надо залогировать действия, которые будет производить gcc g++ в системе Gentoo над файлами - к какому когда обратился и на что - чтение-запись. Куда покопать, что почитать посоветуете? Я понял, что надо будет написать драйвер, в userspace этого не решить. Но это надо сделать любыми средствами.
Спасибо сказали:
Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Re: Написание драйвера перехвата действий ФС

Сообщение Nazyvaemykh »

Может быть, не надо драйвера, а просто strace? И смотреть открываемые файлы…

Потом, можно использовать inotify (man 7 inotify; вот еще для примера
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали:
zvoice
Сообщения: 97
ОС: Ubuntu Gutsy/ Debian Etch(XEN)
Контактная информация:

Re: Написание драйвера перехвата действий ФС

Сообщение zvoice »

Nazyvaemykh писал(а):
03.03.2010 11:50
Может быть, не надо драйвера, а просто strace? И смотреть открываемые файлы…

Потом, можно использовать inotify (man 7 inotify; вот еще для примера

спасибо за совет, я уже копаюсь с инотифай. Суть заключается в очистке исходных текстов(довольно большие, разрабатывавшиеся на многих машинах) - на Windows делается так - запускается Process Monitor, собираются все проекты, те файлы, которые открывались на запись или не открывались вообще - удаляются, проверяется, собирается ли проект без них. Так как strace очень тяжело запустить, когда параллельно работают несколько запущенных компиляторов, то он отпадает. Решение с inotify красивое, интересно, есть ли что еще?
Спасибо сказали:
Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Re: Написание драйвера перехвата действий ФС

Сообщение Nazyvaemykh »

Можно искать файлы, к которым не было доступа с помощью команды find с ключом -anewer
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали:
IMB
Сообщения: 2561
ОС: Debian

Re: Написание драйвера перехвата действий ФС

Сообщение IMB »

А разве Makefile не даёт ответ? С заголовочными файлами чуть сложнее.
Спасибо сказали:
zvoice
Сообщения: 97
ОС: Ubuntu Gutsy/ Debian Etch(XEN)
Контактная информация:

Re: Написание драйвера перехвата действий ФС

Сообщение zvoice »

IMB писал(а):
03.03.2010 12:41
А разве Makefile не даёт ответ? С заголовочными файлами чуть сложнее.

не всегда имеется makefile, имеем дело с различными сборками различных разработчиков - не всегда все так просто. а как тогда искать файлы, которые открывались для записи, но записи в нех не было произведено?
Спасибо сказали:
Аватара пользователя
deadhead
Сообщения: 1913
Статус: zzz..z

Re: Написание драйвера перехвата действий ФС

Сообщение deadhead »

zvoice писал(а):
03.03.2010 13:17
а как тогда искать файлы, которые открывались для записи, но записи в нех не было произведено?
man find
[x] close
Спасибо сказали:
Аватара пользователя
Stauffenberg
Сообщения: 2042
Статус: ☮ PEACE ☮
ОС: открытая и свободная

Re: Написание драйвера перехвата действий ФС

Сообщение Stauffenberg »

zvoice писал(а):
03.03.2010 11:10
Вопрос вот в чем - надо залогировать действия, которые будет производить gcc g++ в системе Gentoo над файлами - к какому когда обратился и на что - чтение-запись. Куда покопать, что почитать посоветуете? Я понял, что надо будет написать драйвер, в userspace этого не решить. Но это надо сделать любыми средствами.

Если Вы уверены, что Вам надо именно это, то предлагаю взглянуть на интерфейс системного вызовова open().
Переписать его с учетом отслеживания вызывающей программы и того, какой файл она открывает... я думаю, проблем быть не должно.
Вопрос еще в том, уверены ли Вы, что Вам нужен именно модуль ядра?
Labor omnia vincit

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.” (Brian Kernighan)
Спасибо сказали:
Аватара пользователя
Nazyvaemykh
Сообщения: 438
Статус: Подопытный участник

Re: Написание драйвера перехвата действий ФС

Сообщение Nazyvaemykh »

Stauffenberg, нужно будет и на fcntl() посмотреть, да? ведь файл может быть первоначально открыть на чтение, а потом…
¡ Страсть к разрушению есть творческая страсть!
Спасибо сказали:
Ответить