hier - Description of the file system hierarchy


     A typical Linux system  has,  among  others,  the  following

     /    This is the root directory.  This is  where  the  whole
          tree starts.

     /bin This directory contains executable programs  which  are
          are  needed in single user mode and to bring the system
          up or repair it.

          Contains static files for the boot loader.  This direc-
          tory  only  holds the files which are needed during the
          boot process.   The  map  installer  and  configuration
          files should go to /sbin and /etc.

     /dev Special or device files, which refer to  physical  dev-
          ices.  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 configuration files which  are  local  to  the
          machine.   Some larger software packages, like X11, can
          have their own  subdirectories  below  /etc.  Site-wide
          configuration  files may be placed here or in /usr/etc.
          Nevertheless, programs should  always  look  for  these
          files in /etc and you may have links for these files to

          When a new user account is  created,  files  from  this
          directory  are  usually  copied  into  the  user's home

          Configuration files for the X11 window system.

          On machines with home directories for users, these  are
          usually  beneath  this directory, directly or not.  The
          structure of this directory depends on local  adminins-
          tration decisions.

     /lib This directory should hold those shared libraries  that
          are  necessary  to  boot the system and to run the com-
          mands in the root filesystem.

     /mnt is a mount point for temporarily mounted filesystems

          This is a mount point for the  proc  filesystem,  which
          provides  information  about  running processes and the
          kernel.  This pseudo-file system is described  in  more
          detail in proc(5).

          Like /bin, this directory holds commands needed to boot
          the  system, but which are usually not executed by nor-
          mal users.

     /tmp This directory contains temporary files  which  may  be
          deleted  with no notice, such as by a regular job or at
          system boot up.

     /usr This directory is usually mounted from a seperate  par-
          tition.   It should hold only sharable, read-only data,
          so that it can be mounted by various  machines  running

          The X-Window system, version 11 release 6.

          Binaries which belong to the X-Windows  system;  often,
          there  is  a  symbolic  link  from the more traditional
          /usr/bin/X11 to here.

          Data files associated with the X-Windows system.

          These contain miscellaneous  files  needed  to  run  X;
          Often,  there  is  a symbolic link from /usr/lib/X11 to
          this directory.

          Contains include files needed  for  compiling  programs
          using  the  X11  window system.  Often, there is a sym-
          bolic link from /usr/inlcude/X11 to this directory.

          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.

          is the traditional place to look for  X11  executables;
          on   Linux,   it   usually   is   a  symbolic  link  to

          This directory holds files containing  word  lists  for
          spell checkers.

          Site-wide configuration  files  to  be  shared  between
          several machines may be stored in this directory.  How-
          ever, commands  should  always  reference  those  files
          using  the  /etc  directory.   Links from files in /etc
          should point to the appropriate files in /usr/etc.

          Include files for the C compiler.

          Include files for the C compiler and the X-Windows sys-
          tem.     This   is   usually   a   symbolic   link   to

          Include files which declare some  assembler  functions.
          This    used    to    be    a    symbolic    link    to
          /usr/src/linux/include/asm, but this isn't the case  in
          Debian or libc6 based systems.

          This contains information which may change from  system
          release  to  system  release  and used to be a symbolic
          link to /usr/src/linux/include/linux to get at  operat-
          ing  system specific information.  Debian systems don't
          do this and use headers from a known good  kernel  ver-
          sion, provided in the libc*-dev package.

          Include files to use with the GNU C++ compiler.

          Object libraries,  including  dynamic  libraries,  plus
          some   executables   which   usually  are  not  invoked
          directly.  More complicated  programs  may  have  whole
          subdirectories there.

          The usual place for data files associated with  X  pro-
          grams, and configuration files for the X system itself.
          On  Linux,  it  usually   is   a   symbolic   link   to

          contains executables and include files for  the  GNU  C
          compiler, gcc(1).

          Files for the GNU groff document formatting system.

          Files for uucp(1).

          Files for timezone information.

          This is where programs which are local to the site typ-
          ically go in.

          Binaries for programs local to the site go there.

          Local documnetation

          Configuration files associated with  locally  installed
          programs go there.

          Files associated with  locally  installed  programs  go

          Info pages associated with locally  installed  programs
          go there.

          Manpages associated with locally installed programs  go

          Locally installed programs for system admininstration.

          Source code for locally installed software.

          Manpages go in there, into their subdirectories.

          These directories contain manual  pages  which  are  in
          source  code form.  Systems which use a unique language
          and code set for all manual pages may omit the <locale>

          This directories contains program binaries  for  system
          admininstration  which  are  not essentail for the boot
          process, for mounting /usr, or for system repair.

          Source files for different parts of the system.

          This contains the sources for the kernel of the operat-
          ing system itself.

          An alternative place to  store  temporary  files;  This
          should be a link to /var/tmp. This link is present only
          for compatibility reasons and shouldn't be used.

     /var This directory contains files which may change in size,
          such as spool and log files.

          This directory is superseded by /var/log and should  be
          a symbolic link to /var/log.

          This directory is used to save backup copies of  impor-
          tant system files.

          These directories  contain  preformatted  manual  pages
          according to their manpage section.

          Lock files are plaed in  this  directory.   The  naming
          convention for device lock files is LCK..<device> where
          <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.

          Miscelanous log files.

          This is where vi(1) saves edit sessions so they can  be
          restored later.

          Run-time varaible files,  like  files  holding  process
          identifiers  (PIDs) and logged user information (utmp).
          Files in this directory are usually  cleared  when  the
          system boots.

          Spooled (or queued) files for various programs.

          Spooled jobs for at(1).

          Spooled jobs for cron(1).

          Spooled files for printing.

          User's mailboxes.

          Spooled files for the smail(1) mail delivery program.

          Spool directory for the news subsystem.

          Spooled files for uucp(1).

          Like /tmp, this directory holds temporary files  stored
          for an unspecified duration.


     The Linux filesystem standard, Release 1.2


     This list is not exhaustive; different systems may  be  con-
     figured differently.


     find(1), ln(1),  mount(1),  proc(5),  The  Linux  Filesystem