Читаем Linux: Полное руководство онлайн бесплатно

КлючНазначение
-сПодсчитывать время, затраченное на каждый вызов и обработку ошибок. В конце трассировки будет представлен подробный отчет
-dВыводить отладочные сообщения самой программы strace на стандартный вывод ошибки
-fТрассировать дочерние процессы, созданные уже трассируемыми процессами
-ffДанная опция применятся только вместе с опцией -o имя_файла. Каждый трассируемый процесс будет записан в файл имя_файла.pid
-FСледовать вызовам vfork(). Данную опцию нельзя использовать вместе с опцией -f
-hВывести справку
-iВыводить указатель инструкции во время системного вызова
-q«Тихий режим». Подавляет вывод некоторых сообщений
-rВыводить относительную метку времени для каждого вызова
-tПеред каждой строкой выводить текущее время
-ttТо же, что и -t, но будут выводиться также микросекунды
-TПоказывать время, потраченное на системный вызов (то есть разницу между временем запуска и временем завершения вызова). Для каждого вызова
-vПолучение дополнительной информации
-VВывести номер версии strace
-XВыводить не-ASCII строки в шестнадцатеричном формате
-XXВыводить все строки в шестнадцатеричном формате
-a столбецВыровнять возвращаемые вызовами значения в указанном столбце (по умолчанию 40)
-e выражениеПозволяет задать отслеживаемые события. За более подробной информацией обратитесь к справочной системе
-e trace=наборОпределить набор отслеживаемых вызовов. Например, trace=open,close,read,write
-e trace=fileБудут отслеживаться только вызовы для работы с файлами (open, stat, chmod, unlink и т.д.)
-e trace=processОтслеживаются вызовы для работы с процессами (fork, exec, wait и др.)
-e trace=networkОтслеживаются сетевые вызовы
-e trace=signalОтслеживаются вызовы для работы с сигналами
-e trace=ipcОтслеживаются IPC-вызовы
-e abbrev=наборСокращает вывод каждого члена структуры. Например, abbrev=all или abbrev=none
-e verbose=наборРазличать структуры различных системных вызовов, по умолчанию verbose=all
-e raw=setВыводит не декодированные значения аргументов системных вызовов. Данный аргумент полезен, если вы не доверяете декодированию или хотите знать точное числовое представление аргумента
-e signal=наборОпределяет набор трассируемых сигналов. По умолчанию signal=all. Вы можете использовать восклицательный знак для отрицания, например, signal=!SIGIO означает, что сигнал SIGIO не будет трассирован
-e read=наборВыполнять полный шестнадцатиричный и ASCII-дамп всех прочитанных вызовом read() данных. Например, чтобы видеть все данные, поступающие через дескрипторы 2 и 7, введите read=2,7
-e write=наборТо же, что и -e read, но только для записи
-o имя_файлаПеренаправить вывод программы в указанный файл. Данный файл будет полезен для дальнейшего анализа трассировки
-p pidПрисоединиться к процессу с PID=pid и начать трассировку
-s размерУстановить максимальный размер строки (по умолчанию 32). Имена файлов не рассматриваются как строки, поэтому всегда будут напечатаны полностью
-S критерийСортирует вывод гистограммы, которая выводится опцией -с, по заданному критерию: time (время), calls (вызовы), name (имя) и nothing (без сортировки)
-u имя_пользователяЗапустить программу от имени указанного пользователя. Эта опция будет полезной, если вы, зарегистрировавшись как root, будете проверять корректность работы программы, если бы она была запущена под другим пользователем

Похожие книги