Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
TRUSS(1)                FreeBSD General Commands Manual               TRUSS(1)

     truss - trace system calls

     truss [-facedDS] [-o file] [-s strsize] -p pid
     truss [-facedDS] [-o file] [-s strsize] command [args]

     The truss utility traces the system calls called by the specified process
     or program.  Output is to the specified output file, or standard error by
     default.  It does this by stopping and restarting the process being
     monitored via ptrace(2).

     The options are as follows:

     -f      Trace descendants of the original traced process created by
             fork(2), vfork(2), etc.

     -a      Show the argument strings that are passed in each execve(2)
             system call.

     -c      Do not display individual system calls.  Instead, before exiting,
             print a summary containing for each system call: the total system
             time used, the number of times the call was invoked, and the
             number of times the call returned with an error.

     -e      Show the environment strings that are passed in each execve(2)
             system call.

     -d      Include timestamps in the output showing the time elapsed since
             the trace was started.

     -D      Include timestamps in the output showing the time elapsed since
             the last recorded event.

     -S      Do not display information about signals received by the process.
             (Normally, truss displays signal as well as system call events.)

     -o file
             Print the output to the specified file instead of standard error.

     -s strsize
             Display strings using at most strsize characters.  If the buffer
             is larger, ``...'' will be displayed at the end of the string.
             The default strsize is 32.

     -p pid  Follow the process specified by pid instead of a new command.

     command [args]
             Execute command and trace the system calls of it.  (The -p and
             command options are mutually exclusive.)

     # Follow the system calls used in echoing "hello"
           $ truss /bin/echo hello
     # Do the same, but put the output into a file
           $ truss -o /tmp/truss.out /bin/echo hello
     # Follow an already-running process
           $ truss -p 34

     kdump(1), ktrace(1), ptrace(2)

     The truss command was written by Sean Eric Fagan for FreeBSD.  It was
     modeled after similar commands available for System V Release 4 and

FreeBSD 11.0-PRERELEASE          May 12, 2009          FreeBSD 11.0-PRERELEASE


Want to link to this manual page? Use this URL:

home | help