.TH NAMEI 1 "June 2011" "util-linux" "User Commands"
.SH NAME
namei \- follow a pathname until a terminal point is found
.SH SYNOPSIS
.B namei
[options]
.IR pathname ...
.SH DESCRIPTION
.B namei
interprets its arguments as pathnames to any type
of Unix file (symlinks, files, directories, and so forth).
.B namei
then follows each pathname until an endpoint
is found (a file, a directory, a device node, etc).
If it finds a symbolic link, it shows the link, and starts
following it, indenting the output to show the context.
.PP
This program is useful for finding "too many levels of
symbolic links" problems.
.PP
For each line of output,
.B namei
uses the following characters to identify the file type found:
.LP
.nf
   f: = the pathname currently being resolved
    d = directory
    l = symbolic link (both the link and its contents are output)
    s = socket
    b = block device
    c = character device
    p = FIFO (named pipe)
    - = regular file
    ? = an error of some kind
.fi
.PP
.B namei
prints an informative message when
the maximum number of symbolic links this system can have has been exceeded.
.SH OPTIONS
.TP
.BR \-l , " \-\-long"
Use the long listing format (same as \fB\-m \-o \-v\fR).
.TP
.BR \-m , " \-\-modes"
Show the mode bits of each file type in the style of ls(1),
for example 'rwxr-xr-x'.
.TP
.BR \-n , " \-\-nosymlinks"
Don't follow symlinks.
.TP
.BR \-o , " \-\-owners"
Show owner and group name of each file.
.TP
.BR \-v , " \-\-vertical"
Vertically align the modes and owners.
.TP
.BR \-x , " \-\-mountpoints"
Show mountpoint directories with a 'D' rather than a 'd'.
.TP
.BR \-V , " \-\-version"
Display version information and exit.
.TP
.BR \-h , " \-\-help"
Display help text and exit.
.SH AUTHOR
The original
.B namei
program was written by Roger Southwick <rogers@amadeus.wr.tek.com>.
.sp
The program was rewritten by Karel Zak <kzak@redhat.com>.
.SH BUGS
To be discovered.
.SH "SEE ALSO"
.BR ls (1),
.BR stat (1),
.BR symlink (7)
.SH AVAILABILITY
The namei command is part of the util-linux package and is available from
https://www.kernel.org/pub/linux/utils/util-linux/.
