Reference

opensnoop(1m)

snoop file opens as they occur. Uses DTrace.

NAME

opensnoop - snoop file opens as they occur. Uses DTrace.

SYNOPSIS

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

DESCRIPTION

opensnoop tracks file opens. As a process issues a file open, details such as UID, PID and pathname are printed out.

The returned file descriptor is printed, a value of -1 indicates an error. This can be useful for troubleshooting to determine if applications are attempting to open files that do not exist.

Since this uses DTrace, only users with root privileges can run this command.

OPTIONS

-a

print all data

-A

dump all data, space delimited

-c

print current working directory of process

-e

print errno value

-F

print the flags passed to open

-g

print full command arguments

-s

print start time, us

-t

print user stack trace

-v

print start time, string

-x

only print failed opens

-Z

print zonename

-f pathname

file pathname to snoop

-n name

process name to snoop

-p PID

process ID to snoop

EXAMPLES

Default output, print file opens by process as they occur,

# opensnoop

Print human readable timestamps,

# opensnoop -v

See error codes,

# opensnoop -e

Snoop this file only,

# opensnoop -f /etc/passwd

FIELDS

ZONE

Zone name

UID

User ID

PID

Process ID

PPID

Parent Process ID

FD

File Descriptor (-1 is error)

FLAGS

Flags passed to open

ERR

errno value (see /usr/include/sys/errno.h)

CWD

current working directory of process

PATH

pathname for file open

COMM

command name for the process

ARGS

argument listing for the process

TIME

timestamp for the open event, us

STRTIME

timestamp for the open event, string

DOCUMENTATION

See the DTraceToolkit for further documentation under the Docs directory. The DTraceToolkit docs may include full worked examples with verbose descriptions explaining the output.

EXIT

opensnoop will run forever until Ctrl-C is hit.

BUGS

occasionally the pathname for the file open cannot be read and the following error will be seen,

dtrace: error on enabled probe ID 6 (...): invalid address

this is normal behaviour.

AUTHOR

Brendan Gregg [Sydney, Australia]

SEE ALSO

dtrace(1M), truss(1)

History

-F since OS X 10.10; -t since OS X 10.10.