2004-11-03 13:51:07 +00:00
|
|
|
|
.\" (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de)
|
|
|
|
|
.\"
|
|
|
|
|
.\" Permission is granted to make and distribute verbatim copies of this
|
|
|
|
|
.\" manual provided the copyright notice and this permission notice are
|
|
|
|
|
.\" preserved on all copies.
|
|
|
|
|
.\"
|
|
|
|
|
.\" Permission is granted to copy and distribute modified versions of this
|
|
|
|
|
.\" manual under the conditions for verbatim copying, provided that the
|
|
|
|
|
.\" entire resulting derived work is distributed under the terms of a
|
|
|
|
|
.\" permission notice identical to this one.
|
|
|
|
|
.\"
|
|
|
|
|
.\" Since the Linux kernel and libraries are constantly changing, this
|
|
|
|
|
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
|
|
|
|
.\" responsibility for errors or omissions, or for damages resulting from
|
|
|
|
|
.\" the use of the information contained herein. The author(s) may not
|
|
|
|
|
.\" have taken the same level of care in the production of this manual,
|
|
|
|
|
.\" which is licensed free of charge, as they might when working
|
|
|
|
|
.\" professionally.
|
|
|
|
|
.\"
|
|
|
|
|
.\" Formatted or processed versions of this manual, if unaccompanied by
|
|
|
|
|
.\" the source, must acknowledge the copyright and authors of this work.
|
|
|
|
|
.\" License.
|
|
|
|
|
.\" Modified Sun Jul 25 11:05:58 1993 by Rik Faith (faith@cs.unc.edu)
|
|
|
|
|
.\" Modified Sat Feb 10 16:18:03 1996 by Urs Thuermann (urs@isnogud.escape.de)
|
|
|
|
|
.\" Modified Mon Jun 16 20:02:00 1997 by Nicol<6F>s Lichtmaier <nick@debian.org>
|
|
|
|
|
.\" Modified Mon Feb 6 16:41:00 1999 by Nicol<6F>s Lichtmaier <nick@debian.org>
|
|
|
|
|
.\" Modified Tue Feb 8 16:46:45 2000 by Chris Pepper <pepper@tgg.com>
|
|
|
|
|
.\" Modified Fri Sep 7 20:32:45 2001 by Tammy Fox <tfox@redhat.com>
|
|
|
|
|
.TH HIER 7 2001-09-07 "Linux" "Linux Programmer's Manual"
|
|
|
|
|
.SH NAME
|
|
|
|
|
hier \- Description of the file system hierarchy
|
|
|
|
|
.SH DESCRIPTION
|
|
|
|
|
A typical Linux system has, among others, the following directories:
|
|
|
|
|
.TP
|
|
|
|
|
.I /
|
|
|
|
|
This is the root directory. This is where the whole tree starts.
|
|
|
|
|
.TP
|
|
|
|
|
.I /bin
|
|
|
|
|
This directory contains executable programs which are needed in
|
|
|
|
|
single user mode and to bring the system up or repair it.
|
|
|
|
|
.TP
|
|
|
|
|
.I /boot
|
|
|
|
|
Contains static files for the boot loader. This directory only holds
|
|
|
|
|
the files which are needed during the boot process. The map installer
|
|
|
|
|
and configuration files should go to
|
|
|
|
|
.I /sbin
|
|
|
|
|
and
|
|
|
|
|
.IR /etc .
|
|
|
|
|
.TP
|
|
|
|
|
.I /dev
|
|
|
|
|
Special or device files, which refer to physical devices. See
|
2005-10-19 14:16:57 +00:00
|
|
|
|
.BR mknod (1).
|
2004-11-03 13:51:07 +00:00
|
|
|
|
.TP
|
|
|
|
|
.I /dos
|
|
|
|
|
If both MS\-DOS and Linux are run on one computer, this is a typical
|
|
|
|
|
place to mount a DOS file system.
|
|
|
|
|
.TP
|
|
|
|
|
.I /etc
|
|
|
|
|
Contains configuration files which are local to the machine. Some
|
|
|
|
|
larger software packages, like X11, can have their own subdirectories
|
|
|
|
|
below
|
|
|
|
|
.IR /etc .
|
|
|
|
|
Site-wide configuration files may be placed here or in
|
|
|
|
|
.IR /usr/etc .
|
|
|
|
|
Nevertheless, programs should always look for these files in
|
|
|
|
|
.I /etc
|
|
|
|
|
and you may have links for these files to
|
|
|
|
|
.IR /usr/etc .
|
|
|
|
|
.TP
|
|
|
|
|
.I /etc/opt
|
|
|
|
|
Host-specific configuration files for add-on applications installed
|
|
|
|
|
in
|
|
|
|
|
.IR /opt .
|
|
|
|
|
.TP
|
|
|
|
|
.I /etc/sgml
|
|
|
|
|
This directory contains the configuration files for SGML and XML (optional).
|
|
|
|
|
.TP
|
|
|
|
|
.I /etc/skel
|
|
|
|
|
When a new user account is created, files from this directory are
|
|
|
|
|
usually copied into the user's home directory.
|
|
|
|
|
.TP
|
|
|
|
|
.I /etc/X11
|
|
|
|
|
Configuration files for the X11 window system (optional).
|
|
|
|
|
.TP
|
|
|
|
|
.I /home
|
|
|
|
|
On machines with home directories for users, these are usually beneath
|
|
|
|
|
this directory, directly or not. The structure of this directory
|
|
|
|
|
depends on local administration decisions.
|
|
|
|
|
.TP
|
|
|
|
|
.I /lib
|
|
|
|
|
This directory should hold those shared libraries that are necessary
|
|
|
|
|
to boot the system and to run the commands in the root filesystem.
|
|
|
|
|
.TP
|
|
|
|
|
.I /mnt
|
|
|
|
|
This directory contains mount points for temporarily mounted filesystems
|
|
|
|
|
.TP
|
|
|
|
|
.I /opt
|
|
|
|
|
This directory should contain add-on packages that contain static files.
|
|
|
|
|
.TP
|
|
|
|
|
.I /proc
|
|
|
|
|
This is a mount point for the
|
|
|
|
|
.I proc
|
|
|
|
|
filesystem, which provides information about running processes and
|
|
|
|
|
the kernel. This pseudo-file system is described in more detail in
|
|
|
|
|
.BR proc (5).
|
|
|
|
|
.TP
|
|
|
|
|
.I /root
|
|
|
|
|
This directory is usually the home directory for the root user (optional).
|
|
|
|
|
.TP
|
|
|
|
|
.I /sbin
|
|
|
|
|
Like
|
|
|
|
|
.IR /bin ,
|
|
|
|
|
this directory holds commands needed to boot the system, but which are
|
|
|
|
|
usually not executed by normal users.
|
|
|
|
|
.TP
|
|
|
|
|
.I /tmp
|
|
|
|
|
This directory contains temporary files which may be deleted with no
|
|
|
|
|
notice, such as by a regular job or at system boot up.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr
|
|
|
|
|
This directory is usually mounted from a separate partition. It
|
|
|
|
|
should hold only sharable, read-only data, so that it can be mounted
|
|
|
|
|
by various machines running Linux.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/X11R6
|
|
|
|
|
The X\-Window system, version 11 release 6 (optional).
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/X11R6/bin
|
|
|
|
|
Binaries which belong to the X\-Windows system; often, there is a
|
|
|
|
|
symbolic link from the more traditional
|
|
|
|
|
.I /usr/bin/X11
|
|
|
|
|
to here.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/X11R6/lib
|
|
|
|
|
Data files associated with the X\-Windows system.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/X11R6/lib/X11
|
|
|
|
|
These contain miscellaneous files needed to run X; Often, there is a
|
|
|
|
|
symbolic link from
|
|
|
|
|
.I /usr/lib/X11
|
|
|
|
|
to this directory.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/X11R6/include/X11
|
|
|
|
|
Contains include files needed for compiling programs using the X11
|
|
|
|
|
window system. Often, there is a symbolic link from
|
|
|
|
|
.I /usr/include/X11
|
|
|
|
|
to this directory.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/bin
|
|
|
|
|
This is the primary directory for executable programs. Most programs
|
|
|
|
|
executed by normal users which are not needed for booting or for
|
|
|
|
|
repairing the system and which are not installed locally should be
|
|
|
|
|
placed in this directory.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/bin/X11
|
|
|
|
|
is the traditional place to look for X11 executables; on Linux, it
|
|
|
|
|
usually is a symbolic link to
|
|
|
|
|
.IR /usr/X11R6/bin .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/dict
|
|
|
|
|
Replaced by
|
|
|
|
|
.IR /usr/share/dict .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/doc
|
|
|
|
|
Replaced by
|
|
|
|
|
.IR /usr/share/doc .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/etc
|
|
|
|
|
Site-wide configuration files to be shared between several machines
|
|
|
|
|
may be stored in this directory. However, commands should always
|
|
|
|
|
reference those files using the
|
|
|
|
|
.I /etc
|
|
|
|
|
directory. Links from files in
|
|
|
|
|
.I /etc
|
|
|
|
|
should point to the appropriate files in
|
|
|
|
|
.IR /usr/etc .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/games
|
|
|
|
|
Binaries for games and educational programs (optional).
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/include
|
|
|
|
|
Include files for the C compiler.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/include/X11
|
|
|
|
|
Include files for the C compiler and the X\-Windows system. This is
|
|
|
|
|
usually a symbolic link to
|
2005-07-19 15:36:19 +00:00
|
|
|
|
.IR /usr/X11R6/include/X11 .
|
2004-11-03 13:51:07 +00:00
|
|
|
|
.TP
|
|
|
|
|
.I /usr/include/asm
|
|
|
|
|
Include files which declare some assembler functions. This used to be a
|
|
|
|
|
symbolic link to
|
|
|
|
|
.IR /usr/src/linux/include/asm .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/include/linux
|
|
|
|
|
This contains information which may change from system release to
|
|
|
|
|
system release and used to be a symbolic link to
|
|
|
|
|
.I /usr/src/linux/include/linux
|
|
|
|
|
to get at operating system specific information.
|
|
|
|
|
|
|
|
|
|
(Note that one should have include files there that work correctly with
|
|
|
|
|
the current libc and in user space. However, Linux kernel source is not
|
|
|
|
|
designed to be used with user programs and does not know anything
|
|
|
|
|
about the libc you are using. It is very likely that things will break
|
|
|
|
|
if you let
|
|
|
|
|
.I /usr/include/asm
|
|
|
|
|
and
|
|
|
|
|
.I /usr/include/linux
|
|
|
|
|
point at a random kernel tree. Debian systems don't do this
|
|
|
|
|
and use headers from a known good kernel
|
|
|
|
|
version, provided in the libc*-dev package.)
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/include/g++
|
|
|
|
|
Include files to use with the GNU C++ compiler.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/lib
|
|
|
|
|
Object libraries, including dynamic libraries, plus some executables
|
|
|
|
|
which usually are not invoked directly. More complicated programs may
|
|
|
|
|
have whole subdirectories there.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/lib/X11
|
|
|
|
|
The usual place for data files associated with X programs, and
|
|
|
|
|
configuration files for the X system itself. On Linux, it usually is
|
|
|
|
|
a symbolic link to
|
|
|
|
|
.IR /usr/X11R6/lib/X11 .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/lib/gcc-lib
|
|
|
|
|
contains executables and include files for the GNU C compiler,
|
|
|
|
|
.BR gcc (1).
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/lib/groff
|
|
|
|
|
Files for the GNU groff document formatting system.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/lib/uucp
|
|
|
|
|
Files for
|
|
|
|
|
.BR uucp (1).
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local
|
|
|
|
|
This is where programs which are local to the site typically go.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/bin
|
|
|
|
|
Binaries for programs local to the site.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/doc
|
|
|
|
|
Local documentation.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/etc
|
|
|
|
|
Configuration files associated with locally installed programs.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/games
|
|
|
|
|
Binaries for locally installed games.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/lib
|
|
|
|
|
Files associated with locally installed programs.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/include
|
|
|
|
|
Header files for the local C compiler.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/info
|
|
|
|
|
Info pages associated with locally installed programs.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/man
|
|
|
|
|
Man pages associated with locally installed programs.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/sbin
|
|
|
|
|
Locally installed programs for system administration.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/share
|
|
|
|
|
Local application data that can be shared among different architectures
|
|
|
|
|
of the same OS.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/local/src
|
|
|
|
|
Source code for locally installed software.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/man
|
|
|
|
|
Replaced by
|
|
|
|
|
.IR /usr/share/man .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/sbin
|
|
|
|
|
This directory contains program binaries for system administration
|
|
|
|
|
which are not essential for the boot process, for mounting
|
|
|
|
|
.IR /usr ,
|
|
|
|
|
or for system repair.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share
|
|
|
|
|
This directory contains subdirectories with specific application data, that
|
|
|
|
|
can be shared among different architectures of the same OS.
|
|
|
|
|
Often one finds stuff here that used to live in
|
|
|
|
|
.I /usr/doc
|
|
|
|
|
or
|
|
|
|
|
.I /usr/lib
|
|
|
|
|
or
|
|
|
|
|
.IR /usr/man .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/dict
|
|
|
|
|
Contains the word lists used by spell checkers.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/doc
|
|
|
|
|
Documentation about installed programs.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/games
|
|
|
|
|
Static data files for games in
|
|
|
|
|
.IR /usr/games .
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/info
|
|
|
|
|
Info pages go here.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/locale
|
|
|
|
|
Locale information goes here.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/man
|
2006-03-20 04:46:28 +00:00
|
|
|
|
Manual pages go here in subdirectories according to the man page sections.
|
2004-11-03 13:51:07 +00:00
|
|
|
|
.TP
|
2005-07-07 08:27:03 +00:00
|
|
|
|
.I /usr/share/man/<locale>/man[1\-9]
|
2004-11-03 13:51:07 +00:00
|
|
|
|
These directories contain manual pages for the specific locale in source code
|
|
|
|
|
form. Systems which use a unique language and code set for all manual pages
|
|
|
|
|
may omit the <locale> substring.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/misc
|
|
|
|
|
Miscellaneous data that can be shared among different architectures of the
|
|
|
|
|
same OS.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/nls
|
|
|
|
|
The message catalogs for native language support go here.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/sgml
|
|
|
|
|
Files for SGML and XML.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/terminfo
|
2005-06-24 14:17:21 +00:00
|
|
|
|
The database for terminfo.
|
2004-11-03 13:51:07 +00:00
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/tmac
|
|
|
|
|
Troff macros that are not distributed with groff.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/share/zoneinfo
|
|
|
|
|
Files for timezone information.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/src
|
|
|
|
|
Source files for different parts of the system, included with some packages
|
|
|
|
|
for reference purposes. Don't work here with your own projects, as files
|
|
|
|
|
below /usr should be read-only except when installing software.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/src/linux
|
|
|
|
|
This was the traditional place for the kernel source.
|
|
|
|
|
Some distributions put here the source for the default kernel they ship.
|
|
|
|
|
You should probably use another directory when building your own kernel.
|
|
|
|
|
.TP
|
|
|
|
|
.I /usr/tmp
|
|
|
|
|
Obsolete. This should be a link
|
|
|
|
|
to
|
|
|
|
|
.IR /var/tmp .
|
|
|
|
|
This link is present only for compatibility reasons and shouldn't be used.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var
|
|
|
|
|
This directory contains files which may change in size, such as spool
|
|
|
|
|
and log files.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/adm
|
|
|
|
|
This directory is superseded by
|
|
|
|
|
.I /var/log
|
|
|
|
|
and should be a symbolic link to
|
|
|
|
|
.IR /var/log .
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/backups
|
|
|
|
|
Reserved for historical reasons.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/cache
|
|
|
|
|
Data cached for programs.
|
|
|
|
|
.TP
|
2005-07-07 08:27:03 +00:00
|
|
|
|
.IR /var/catman/cat[1\-9] " or " /var/cache/man/cat[1\-9]
|
2004-11-03 13:51:07 +00:00
|
|
|
|
These directories contain preformatted manual pages according to their
|
|
|
|
|
man page section. (The use of preformatted manual pages is deprecated.)
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/cron
|
|
|
|
|
Reserved for historical reasons.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/lib
|
|
|
|
|
Variable state information for programs.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/local
|
|
|
|
|
Variable data for
|
|
|
|
|
.IR /usr/local .
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/lock
|
|
|
|
|
Lock files are placed in this directory. The naming convention for
|
|
|
|
|
device lock files is
|
|
|
|
|
.I LCK..<device>
|
|
|
|
|
where
|
|
|
|
|
.I <device>
|
|
|
|
|
is the device's name in the filesystem.
|
|
|
|
|
The format used is that of HDU UUCP lock files, i.e. lock files
|
|
|
|
|
contain a PID as a 10-byte ASCII decimal number, followed by a newline
|
|
|
|
|
character.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/log
|
|
|
|
|
Miscellaneous log files.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/opt
|
|
|
|
|
Variable data for
|
|
|
|
|
.IR /opt .
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/mail
|
|
|
|
|
Users' mailboxes. Replaces
|
|
|
|
|
.IR /var/spool/mail .
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/msgs
|
|
|
|
|
Reserved for historical reasons.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/preserve
|
|
|
|
|
Reserved for historical reasons.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/run
|
|
|
|
|
Run-time variable files, like files holding process identifiers (PIDs)
|
|
|
|
|
and logged user information
|
|
|
|
|
.IR (utmp) .
|
|
|
|
|
Files in this directory are usually cleared when the system boots.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool
|
|
|
|
|
Spooled (or queued) files for various programs.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/at
|
|
|
|
|
Spooled jobs for
|
|
|
|
|
.BR at (1).
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/cron
|
|
|
|
|
Spooled jobs for
|
|
|
|
|
.BR cron (1).
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/lpd
|
|
|
|
|
Spooled files for printing.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/mail
|
|
|
|
|
Replaced by
|
|
|
|
|
.IR /var/mail .
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/mqueue
|
|
|
|
|
Queued outgoing mail.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/news
|
|
|
|
|
Spool directory for news.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/rwho
|
|
|
|
|
Spooled files for
|
|
|
|
|
.BR rwhod (8).
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/smail
|
|
|
|
|
Spooled files for the
|
|
|
|
|
.BR smail (1)
|
|
|
|
|
mail delivery program.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/spool/uucp
|
|
|
|
|
Spooled files for
|
|
|
|
|
.BR uucp (1).
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/tmp
|
|
|
|
|
Like
|
|
|
|
|
.IR /tmp ,
|
|
|
|
|
this directory holds temporary files stored for an unspecified duration.
|
|
|
|
|
.TP
|
|
|
|
|
.I /var/yp
|
|
|
|
|
Database files for NIS.
|
2006-08-04 12:39:17 +00:00
|
|
|
|
.SH "CONFORMING TO"
|
2004-11-03 13:51:07 +00:00
|
|
|
|
The Filesystem Hierarchy Standard, Version 2.2 <http://www.pathname.com/fhs/>
|
|
|
|
|
.SH BUGS
|
|
|
|
|
This list is not exhaustive; different systems may be configured
|
|
|
|
|
differently.
|
|
|
|
|
.SH "SEE ALSO"
|
|
|
|
|
.BR find (1),
|
|
|
|
|
.BR ln (1),
|
|
|
|
|
.BR mount (1),
|
|
|
|
|
.BR proc (5)
|
|
|
|
|
|
|
|
|
|
The Filesystem Hierarchy Standard
|