30

Had a sysinternals tool (filemon) for that, but now I can find something similar for the mac.

I'm a developer and I basically want to debug "file not found" or "wrong permissions" errors.

slhck
  • 235,242

4 Answers4

18

You can use lsof or fs_usage in Terminal. lsof can be quite powerful. If it's about a specific process, you can try sampling it in Activity Monitor.

For a GUI tool, my recommendation is fseventer:

enter image description here

enter image description here

enter image description here

More GUI-oriented utilities, which I haven't used:

FileMon

enter image description here

FS Spy

enter image description here

Gareth
  • 19,080
phoebus
  • 4,001
5

Less visual

https://diigo.com/0xcp0 for highlights from Brendan's blog » Top 10 DTrace scripts for Mac OS X (2011-10-10).

More visual

For more modern operating systems that are incompatible with fseventer, there's Apple Xcode Instruments –

selecting the File Activity template

Instruments in the background, Terminal in front

– powerful, but (compared to fseventer) in some cases, Instruments may be too heavyweight.

4

For viewing what files are accessed in real time you can leverage fs_usage part of the FSEvents feature in Mac OS X or even dtrace itself.

Usage: sudo fs_usage [PID].

For more info, check out the man page

Chealion
  • 26,327
0

You can use the dtrace opensnoop script to identify failed opens (file not found and permission errors)

jlliagre
  • 14,369