Пошаговые руководства, шпаргалки, полезные ссылки...
БлогФорумАвторы
Полезные Online-сервисы
Перечень Бесплатного ПО
Подписка на RSS-канал
При отладке разных скриптов и программ в Linux может потребоваться анализ происходящих на файловой системы событий при запуске соответствующего скрипта или приложения. На помощь нам придёт утилита strace, которая может быть установлена из репозиториев разных дистрибутивов Linux.
Пример вызова приложения, поведение которого на файловой системе нужно исследовать:
$ strace -xf -eopen -o /path/to/log /path/to/program
В следующем примере мы будем вызывать текстовый редактор nano и собирать лог его активности в файловой системе (strace-nano.log) в домашнем каталоге текущего пользователя:
strace-nano.log
$ strace -xf -eopen -o ~/strace-nano.log nano ~/temp.txt
Пример обработки лога для выборки событий доступа к файлам
$ sed -n 's/.*open(\(.*\))\s*=.*/\1/p' ~/strace-nano.log | sort "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC "/etc/nanorc", O_RDONLY "/home/user/.nano_history", O_RDONLY "/home/user/.nanorc", O_RDONLY "/home/user/temp.txt", O_RDONLY "/home/user/temp.txt", O_WRONLY|O_CREAT|O_TRUNC, 0666 "/lib/terminfo/x/xterm", O_RDONLY "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC ...
Пример обработки лога для выборки событий доступа к файлам с попыткой записи:
$ sed -n 's/.*open(\(.*\))\s*=.*/\1/p' ~/strace-nano.log | grep -v O_RDONLY | sort "/home/user/temp.txt", O_WRONLY|O_CREAT|O_TRUNC, 0666
Дополнительные источники информации:
Проверено на следующих конфигурациях:
Автор первичной редакции: Алексей Максимов Время публикации: 09.06.2018 12:35