freebsd-dev/usr.bin/truss/truss.1

99 lines
2.0 KiB
Groff
Raw Normal View History

.\" $FreeBSD$
.\"
2004-09-03 18:56:59 +00:00
.Dd September 3, 2004
1997-12-06 05:23:12 +00:00
.Dt TRUSS 1
.Os
1997-12-06 05:23:12 +00:00
.Sh NAME
.Nm truss
1997-12-06 05:23:12 +00:00
.Nd trace system calls
.Sh SYNOPSIS
.Nm
.Op Fl faedDS
.Op Fl o Ar file
.Fl p Ar pid
.Nm
.Op Fl faedDS
1997-12-06 05:23:12 +00:00
.Op Fl o Ar file
command
.Op args
1997-12-06 05:23:12 +00:00
.Sh DESCRIPTION
2002-04-20 12:18:28 +00:00
The
.Nm
utility traces the system calls called by the specified process or program.
1997-12-06 05:23:12 +00:00
Output is to the specified output file, or standard error by default.
It does this by stopping and restarting the process being monitored via
.Xr procfs 5 .
.Pp
The options are as follows:
.Bl -tag -width indent
.It Fl f
Trace decendants of the original traced process created by
.Xr fork 2 ,
.Xr vfork 2 ,
etc.
.It Fl a
Show the argument strings that are passed in each
.Xr execve 2
system call.
.It Fl e
Show the environment strings that are passed in each
.Xr execve 2
system call.
.It Fl d
Include timestamps in the output showing the time elapsed
since the trace was started.
.It Fl D
Include timestamps in the output showing the time elapsed
since the last recorded event.
1997-12-06 05:23:12 +00:00
.It Fl S
Do not display information about signals received by the process.
(Normally,
.Nm
1997-12-06 05:23:12 +00:00
displays signal as well as system call events.)
.It Fl o Ar file
Print the output to the specified
.Ar file
instead of standard error.
.It Fl p Ar pid
2001-07-15 08:06:20 +00:00
Follow the process specified by
1997-12-06 05:23:12 +00:00
.Ar pid
instead of a new command.
.It Ar command Op args
1997-12-06 05:23:12 +00:00
Execute
.Ar command
and trace the system calls of it.
(The
.Fl p
and
.Ar command
options are mutually exclusive.)
2000-12-19 16:00:12 +00:00
.El
.Pp
The
.Xr procctl 8
utility can be used to clear tracepoints in a stuck process
2004-09-07 13:22:28 +00:00
left behind if
.Nm
terminates abnormally.
1997-12-06 05:23:12 +00:00
.Sh EXAMPLES
# Follow the system calls used in echoing "hello"
.Dl $ truss /bin/echo hello
# Do the same, but put the output into a file
.Dl $ truss -o /tmp/truss.out /bin/echo hello
# Follow an already-running process
.Dl $ truss -p 1
.Sh SEE ALSO
.Xr kdump 1 ,
1997-12-06 05:23:12 +00:00
.Xr ktrace 1 ,
.Xr procfs 5 ,
.Xr procctl 8
1997-12-06 05:23:12 +00:00
.Sh HISTORY
The
.Nm
command was written by
.An Sean Eric Fagan
for
.Fx .
It was modeled after
1997-12-06 05:23:12 +00:00
similar commands available for System V Release 4 and SunOS.