a fdesc
a mount_point .Sh DESCRIPTION The .Nm mount_fdesc command attaches an instance of the per-process file descriptor namespace to the global filesystem namespace. The conventional mount point is
a /dev and the filesystem should be union mounted in order to augment, rather than replace, the existing entries in
a /dev . This command is normally executed by .Xr mount 8 at boot time.
p The contents of the mount point are
a fd ,
a stderr ,
a stdin ,
a stdout and
a tty .
p
a fd is a directory whose contents appear as a list of numbered files which correspond to the open files of the process reading the directory. The files
a /dev/fd/# refer to file descriptors which can be accessed through the file system. If the file descriptor is open and the mode the file is being opened with is a subset of the mode of the existing descriptor, the call: d -literal -offset indent fd = open("/dev/fd/0", mode); .Ed
p and the call: d -literal -offset indent fd = fcntl(0, F_DUPFD, 0); .Ed
p are equivalent.
p The files
a /dev/stderr appear as symlinks to the relevant entry in the
a /dev/fd sub-directory. Opening them is equivalent to the following calls: d -literal -offset indent fd = fcntl(STDIN_FILENO, F_DUPFD, 0); fd = fcntl(STDOUT_FILENO, F_DUPFD, 0); fd = fcntl(STDERR_FILENO, F_DUPFD, 0); .Ed
p Flags to the .Xr open 2 call other than .Dv O_RDONLY , .Dv O_WRONLY and .Dv O_RDWR are ignored.
p The
a /dev/tty entry is an indirect reference to the current process's controlling terminal. It appears as a named pipe (FIFO) but behaves in exactly the same way as the real controlling terminal device. .Sh FILES l -tag -width /dev/stderr -compact t Pa /dev/fd/# t Pa /dev/stdin t Pa /dev/stdout t Pa /dev/stderr t Pa /dev/tty .El .Sh SEE ALSO .Xr mount 2 , .Xr unmount 2 , .Xr tty 4 , .Xr fstab 5 .Sh CAVEATS No
a . and
a .. entries appear when listing the contents of the
a /dev/fd directory. This makes sense in the context of this filesystem, but is inconsistent with usual filesystem conventions. However, it is still possible to refer to both
a . and
a .. in a pathname.
p This filesystem may not be NFS-exported. .Sh HISTORY The .Nm mount_fdesc utility first appeared in 4.4BSD.