ryg

Команда opensnoop в Mac OS X

Синтаксис:

opensnoop [-a|-A|-ceghsvxZ] [-f pathname] [-n name] [-p PID]

Описание:

Программа opensnoop в Mac OS X позволяет отслеживать открытие файлов, для этого она использует механизм DTrace.

Когда какой-либо процесс открывает файл, команда выводит информацию об UID, PID и имени файла. Если вместо дескриптора файла печатается  -1, это означает ошибку открытия.  Данное сообщение может быть полезно при отладке приложений, так как будут видны попытки открытия несуществующих файлов.

Параметры:

-a Выводить все данные.
-A Сделать дамп всех данных, разделенный пробелами.
-c Вывести текущую папку, используемую процессом.
-e Печатать значения ошибок.
-g Выводить со всеми параметрами процесса
-s Напечатать время начала числом. 
-v Напечатать время открытия файла строкой, удобной для чтения человеком.
-x Выводить на экран только ошибки открытия файлов.
-Z Выводить zonename
-f pathname Отслеживать открытие файла pathname.
-n name Отслеживать открытие файлов процессом с именем name.
-p PID Выводить на экран открытие файлов указанным процессом PID.

Расшифровка наименований колонок выводимых утилитой opensnoop

ZONE   -zone name
UID -идентификатор пользователя
PID -идентификатор процесса
FD -дескриптор файла (в случае ошибки открытия выводится -1)
ERR -номер ошибки возникшей при доступе к файлу (список и краткое описание ошибок можно посмотреть в файле /usr/include/sys/errno.h)
CWD -рабочая папка процесса
PATH -имя и путь к открываемому приложением файлу
COMM -имя команды для процесса
ARGS -параметры процесса
TIME -время открытия файла
STRTIME -время открытия файла в формате, удобном для восприятия человеком.

Работа утилиты может быть завершена комбинацией клавиш Ctrl-C.
Дополнительная информация по команде может быть найдена по запросу DTraceToolkit.

Примеры:

Вывод по умолчанию процессов и открываемых ими файлов

opensnoop

Выводить время открытия файлов в человекоудобном интерфейсе

opensnoop -v

Показывать коды ошибок открытия файлов

opensnoop -e

Отслеживать открытие только файла /etc/passwd

opensnoop -f /etc/passwd

fs_usage -- показать обращения к файлам файлы и возвавшие их процессы
top - отображение информации о процессах в Mac OS X
vm_stat -Получить информацию об использовании оперативной памяти


Весь список команд терминала Mac OS X