hier
Hurricane Electric Internet Services
NAME
hier - Description of the file system hierarchy
DESCRIPTION
A typical Linux system has, among others, the following
directories:
/ This is the root directory. This is where the
whole tree starts.
/bin This directory contains executable programs which
are executed often, are needed to bring the system
up or repair it.
/dev Special or device files, which refer to physical
devices. See mknod(1).
/dos If both MS-DOS and Linux are run on one computer,
this is a typical place to mount a DOS file system.
/etc contains programs and other files necessary to sys-
tem administration; normal users don't need any of
this. Usually, this directory is not in their
$PATH.
/etc/skel
When a new user account is created, files from this
directory are usually copied into the user's home
directory.
/etc/lilo
The Linux Loader for booting the system goes here.
/install
This is used by some installations scripts to keep
track of which packages have been installed.
/lib Frequently-used object code libraries, including
dynamic libraries, which are linked at the time an
executable starts up, plus some executables which
usually are not called directly.
/proc This is the directory where information about run-
ning processes can be obtained.
/proc/[0-9]+
This directory contains information about the pro-
cess associated with its number; it has such files
as the command line, the environment, the memory
contents, or statistics about the process.
/proc/[0-9]+/fd
A directory containing the file descriptors associ-
ated with the process.
/proc/[0-9]+/lib
A directory containing the dynamic libraries asso-
ciated with a process.
/proc/self
This is a link to the directory associated with the
calling process.
/tmp This directory contains temporary files which may
be deleted with no notice, such as by a regular job
or at system boot up.
/user This often is an empty directory, which can be used
as a mount point for floppy disks.
/usr Less-frequently used commands and other things;
this is often a mount point for a separate parti-
tion or volume.
/usr/TeX
The TeX typesetting system.
/usr/TeX/bin
Binary commands for the TeX system. /usr/TeX/lib
This contains data files connected with TeX, and
may contain further subdirectories.
/usr/TeX/man
Manual pages with the TeX system.
/usr/TeX/src
Sources associates with TeX.
/usr/X386
The X-Windows system.
/usr/X386/bin
Binaries which belong to the X-Windows system;
often, there is a symbolic link from the more tra-
ditional /usr/bin/X11 to here.
/usr/X386/lib
Data files associated with the X-Windows system.
/usr/X386/lib/X11
These contain miscellaneous files needed to run X;
among them configuration files. Often, there is a
symbolic link from /usr/lib/X11 to this directory.
/usr/adm
This often contains various log files.
/usr/bin
This contains binaries which are not needed so
often, or are not needed for bringing the system up
or repairing it. The decision whether to put some-
thing in /bin or /usr/bin should be guided by the
simple consideration: "If I put it in /usr/bin and
/usr is not available on boot, do I still get the
system up?"
/usr/bin/X11
is the traditional place to look for X11 executa-
bles; on Linux, it usually is a symbolic link to
/usr/X386/bin.
/usr/g++-include
Include files to use with the GNU C++ compiler.
/usr/homes
This contains the home directories for normal
users.
/usr/include
Include files for the C compiler.
/usr/include/X11
Include files for the C compiler and the X-Windows
system.
/usr/include/asm
Include files which declare some assembler func-
tions. This should be a symbolic link to
/usr/src/linux/include/asm.
/usr/include/linux
This contains information which may change from
system release to system release and should be a
symbolic link to /usr/src/linux/include/linux to
get at operating system specific information.
/usr/lib
Less - frequently used object libraries, including
dynamic libraries, plus some executables which usu-
ally are not invoked directly. More complicated
programs may have whole subdirectories there.
/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
/usr/X386/lib/X11.
/usr/lib/X11/app-defaults
X applications store their default resource (in
other words, application defaults) here. If you
want to change the way a certain program looks,
this is the place to look.
/usr/lib/X11/config
This directory is used for the imake(1) utility
which incorporates information about the system
into Makefiles.
/usr/lib/X11/twm
Files for the twm(1) window manager.
/usr/lib/X11/xinit
Files for starting up the X Windows system.
/usr/lib/gcc-lib
contains configuration files for the system's C
compiler, gcc(1).
/usr/lib/groff
Files for the groff document formatting system.
/usr/lib/uucp
Files for uucp(1).
/usr/lib/zoneinfo
Files for timezone information.
/usr/local
This is where programs which are local to the site
typically go in. Some program packages, such as
EMACS, may have their own subdirectories there.
/usr/local/bin
Binaries for programs local to the site go there.
/usr/local/lib
Files associated with locally installed programs go
there.
/usr/local/man
Manpages associated with locally installed programs
go there.
/usr/man
Manpages go in there, into their subdirectories.
/usr/man/cat[1-9]
These directories contain preformatted manual pages
according to their manpage section.
/usr/man/man[1-9]
These directories contain manual pages which are in
source code form.
/usr/openwin
Files associated with the Open Windows Window man-
ager for X go there.
/usr/preserve
This is where vi(1) saves edit sessions so they can
be restored later.
/usr/spool
Spooled (or queued) files for various programs.
/usr/spool/atjobs
Spooled jobs for at(1).
/usr/spool/cron
Spooled jobs for cron(1).
/usr/spool/lp1
Spooled files for a printer.
/usr/spool/mail
User's mailboxes.
/usr/spool/smail
Spooled files for the smail(1) mail delivery pro-
gram.
/usr/spool/uucp
Spooled files for uucp(1).
/usr/src
Source files for different parts of the system.
/usr/src/libc-linux
Sources for the C library.
/usr/src/linux
This contains the sources for the operating system
itself.
/usr/tmp
An alternative place to store temporary files;
often used if the files will be huge.
/var On some systems with more of a BSD flavour to them,
this directory contains all the files which may
change in size, such as spool and log files, and
/usr only contains static files. Often, /var is
just a symbolic link to /usr.
CONFORMS TO
The layout of this file system generally follows System V
conventions.
BUGS
This list is not exhaustive; different systems may be con-
figured differently.
SEE ALSO
find(1), ln(1), mount(1)
Hurricane Electric Internet Services
Copyright (C) 1998
Hurricane Electric.
All Rights Reserved.