Differences between revisions 15 and 17 (spanning 2 versions)
Revision 15 as of 2007-08-12 19:31:53
Size: 4242
Editor: FranklinPiat
Comment:
Revision 17 as of 2007-09-03 23:45:46
Size: 5528
Editor: ?EEaton
Comment:
Deletions are marked like this. Additions are marked like this.
Line 12: Line 12:
The FHS is maintained by the Free Standards Group, a non-profit organization consisting of major software and hardware vendors, such as HP, IBM and Dell. Still, the vast majority of the Linux distributions, including those developed by members of the Free Standards Group, do not follow this proposed standard. In particular, paths specifically created by the FHS editors, such as /media/ and /srv/, do not see widespread usage. Some Unix and Linux systems break with the FHS in favor of a different approach, as in GoboLinux. The FHS is maintained by the Free Standards Group, a non-profit organization consisting of major software and hardware vendors, such as HP, IBM and Dell. Still, the vast majority of the Linux distributions, including those developed by members of the Free Standards Group, do not follow this proposed standard. In particular, paths specifically created by the FHS editors, such as /media/ and /srv/, do not see widespread usage. Some Unix and Linux systems break with the FHS in favor of a different approach, as in Gobo Linux.
Line 20: Line 20:
-
 */bin/
 *Essential command executable (|'''bin'''aries) for all users (e.g., cat, ls, cp)
## THIS SECTION SHOULD BE REWRITTEN TO EMPHASIZE ON DEBIAN CONSIDERATIONS
Line 24: Line 22:
-
 */boot/
 *["Boot loader"] ('''Boot''' loader files) ,e.g., ["kernel"]s, ["initrd"]
-
 * /dev/
 *Essential '''dev'''ices (e.g., :/dev/null)
-
 */etc/
 *Host-specific system-wide configuration files (from '''et c'''etera)
-
[[Anchor(bin)]]
 /bin/ :: Essential command executable ('''bin'''aries) for all users (e.g., cat, ls, cp) [[BR]] (especially files required to boot or rescue the system)
Line 35: Line 25:
 * :/etc/opt/
 * Configuration files for /opt/
-
[[Anchor(boot)]]
 /boot/ :: '''Boot''' loader, [:Kernel:kernels] and [:Initrd:initrd] files
Line 39: Line 28:
 * :/etc/X11/ (optional)
 *Configuration files for the ["X Window System"] ('''X''' Window System), version '''11'''
[[Anchor(dev)]]
 /dev/ :: '''dev'''ices files (e.g., :/dev/null)
Line 42: Line 31:
- [[Anchor(etc)]]
 /etc/ :: Host-specific system-wide configuration files (from '''et c'''etera)
Line 44: Line 34:
 * :/etc/sgml/ (optional)
 *Configuration files for '''SGML'''
-
[[Anchor(home)]]
 /home/ :: Users' '''home''' directories
Line 48: Line 37:
 * :/etc/xml/ (optional)
 *Configuration files for '''XML'''
-
 * /home/ (optional)
 *Users' '''home''' directories
-
 * /lib/
 *'''Lib'''raries essential for the binaries in /bin/ and /sbin/
-
 */mnt/
 *Temporarily '''m'''ou'''nt'''ed filesystems
-
 */media/
 *Mount points for removable '''media''' such as CD-ROMs (appeared in FHS-2.3)
-
 * /opt/
 *Static application software packages
-
 * /proc/
 *Virtual filesystem documenting kernel and '''proc'''ess status, mostly text files (e.g., uptime, network)
-
 */root/ (optional)
 *Home directory for the '''["root"]''' user
-
 * /sbin/
 *System administrative binaries (e.g., init, route, ifup) ('''s'''ystem '''bin'''aries)
-
 */tmp/
 *'''T'''e'''mp'''orary files
-
 */srv/
 *Site-specific data which is '''s'''e'''rv'''ed by the system
-
 * /usr/
 *Secondary hierarchy for shareable, read-only data (formerly from '''U'''NIX '''s'''ource '''r'''epository, now from '''U'''NIX '''s'''ystem '''r'''esources)
-
[[Anchor(lib)]]
 /lib/ :: '''Lib'''raries essential for the binaries in /bin/ and /sbin/ [[BR]] (library required to boot or rescue the system)
Line 85: Line 40:
 * :/usr/bin/
 *Same as for top-level hierarchy
-
[[Anchor(lost+found)]]
 /lost+fount/ :: Some files and fragment that were "recovered" during the previous {{{fsck}}} (Not part of FHS)
Line 89: Line 43:
 * :/usr/include/
 * Standard '''include''' files
-
 
 * :/usr/lib/
 *Same as for top-level hierarchy
-
[[Anchor(mnt)]]
 /mnt/ :: Temporarily '''m'''ou'''nt'''ed filesystems
Line 97: Line 46:
 * :/usr/sbin/
 *Same as for top-level hierarchy
-
[[Anchor(media)]]
 /media/ :: Mount points for removable '''media''' such as CD-ROMs (appeared in FHS-2.3)
Line 101: Line 49:
 * :/usr/share/
 *Architecture-independent ('''share'''d) data
-
[[Anchor(opt)]]
 /opt/ :: Add-on application software packages [[BR]] Pre-compiled, non ".deb" binary distribution (tar'ed..) goes here.
 * /opt/bin/ : Same as for top-level hierarchy
 * /opt/include/ : Same as for top-level hierarchy
 * /opt/lib/ : Same as for top-level hierarchy
 * /opt/sbin/ : Same as for top-level hierarchy
 * /opt/share/ : Same as for top-level hierarchy
Line 105: Line 57:
 * :/usr/src/ (optional)
 *'''S'''ou'''rc'''e code
-
[[Anchor(proc)]]
 /proc/ :: Virtual filesystem documenting kernel and '''proc'''ess status, mostly text files (e.g., uptime, network)
Line 109: Line 60:
 * :/usr/X11R6/ (optional)
 *'''X''' Window System, Version '''11 R'''elease '''6'''
-
[[Anchor(root)]]
 /root/ :: Home directory for the '''root''' user
Line 113: Line 63:
 *:/usr/local/
 *Tertiary hierarchy for '''local''' data installed by the ["system administrator"]
-
 * /var/
 *'''Var'''iable files, such as logs, databases, websites, and temporary e-mail files
[[Anchor(sbin)]]
 /sbin/ :: System administrative binaries (e.g., init, route, ifup) ('''s'''ystem '''bin'''aries) [[BR]] (files required to boot or rescue the system)

[[Anchor(tmp)]]
 /tmp/ :: '''T'''e'''mp'''orary files

[[Anchor(srv)]]
 /selinux/ :: SE-Linux runtime settings (Not part of FHS).

[[Anchor(srv)]]
 /srv/ :: Site-specific data which is '''s'''e'''rv'''ed by the system (Not part of FHS).

[[Anchor(sys)]]
 /sys/ :: '''The''' filesystem for exporting kernel objects.[[BR]] (many /proc/* files should have been here...)

[[Anchor(usr)]]
 /usr/ :: Secondary hierarchy for shareable, read-only data (formerly from '''U'''NIX '''s'''ource '''r'''epository, now from '''U'''NIX '''s'''ystem '''r'''esources) [[BR]] (files that are '''not'''-required to boot or rescue the system)

 * /usr/bin/ : Same as for top-level hierarchy
 * /usr/include/ : Standard '''include''' files
 * /usr/lib/ : Same as for top-level hierarchy
 * /usr/sbin/ : Same as for top-level hierarchy
 * /usr/share/ : Architecture-independent ('''share'''d) data
 * /usr/src/ : '''S'''ou'''rc'''e code (to build debian packages. see also /usr/local/src/)
 * /usr/!X11R6/ : '''X''' Window System, Version '''11 R'''elease '''6'''
 * /usr/local/ : Tertiary hierarchy for '''local''' data installed by the system administrator
   * /usr/local/bin : locally compiled binaries, local shell script, etc.
   * /usr/local/src : '''S'''ou'''rc'''e code (place where to extract and build non debian'ized stuffs)

[[Anchor(var)]]
 /var/ :: '''Var'''iable data, such as logs, databases, websites, and temporary spool (e-mail..) files
Line 120: Line 96:
 * "The Directory Tree" overview (Debian GNU/Linux Installation Guide [http://www.debian.org/releases/etch/i386/apcs02.html i386], [http://www.debian.org/releases/etch/amd64/apcs02.html amd64]..)
Line 121: Line 98:
 * http://www.debian.org/doc/packaging-manuals/fhs/
 * See also PrintingFilesystem
 * http://www.debian.org/doc/packaging-manuals/fhs/ - FHS mirrored at Debian
## ? WHY ? * See also PrintingFilesystem

["FileSystem"] > FilesystemHierarchyStandard


The Filesystem Hierarchy Standard (FHS) defines the main directories and their contents in Linux and other Unix-like computer operating systems.

Overview

The process of developing a standard ["filesystem"] hierarchy began in August 1993 with an effort to restructure the file and directory structure of ["Linux"]. The FSSTND (Filesystem Standard), a filesystem hierarchy standard specific to the Linux operating system, was released on February 14, 1994. Subsequent revisions were released on October 9, 1994 and March 28, 1995.

In early 1996, the goal of developing a more comprehensive version of FSSTND to address not only Linux, but other Unix-like systems was adopted with the help of members of the BSD development community. As a result, a concerted effort was made to focus on issues that were general to Unix-like systems. In recognition of this widening of scope, the name of the standard was changed to Filesystem Hierarchy Standard or FHS for short.

The FHS is maintained by the Free Standards Group, a non-profit organization consisting of major software and hardware vendors, such as HP, IBM and Dell. Still, the vast majority of the Linux distributions, including those developed by members of the Free Standards Group, do not follow this proposed standard. In particular, paths specifically created by the FHS editors, such as /media/ and /srv/, do not see widespread usage. Some Unix and Linux systems break with the FHS in favor of a different approach, as in Gobo Linux.

Directory structure

All files and directories appear under the ["root directory"] "/", even if stored on different physical devices.

A description of the hierarchy specified in the FHS

?Anchor(bin)

/bin/

Essential command executable (binaries) for all users (e.g., cat, ls, cp) ?BR (especially files required to boot or rescue the system)

?Anchor(boot)

/boot/

Boot loader, [:Kernel:kernels] and [:Initrd:initrd] files

?Anchor(dev)

/dev/

devices files (e.g., :/dev/null)

?Anchor(etc)

/etc/

Host-specific system-wide configuration files (from et cetera)

?Anchor(home)

/home/

Users' home directories

?Anchor(lib)

/lib/

Libraries essential for the binaries in /bin/ and /sbin/ ?BR (library required to boot or rescue the system)

?Anchor(lost+found)

/lost+fount/

Some files and fragment that were "recovered" during the previous fsck (Not part of FHS)

?Anchor(mnt)

/mnt/

Temporarily mounted filesystems

?Anchor(media)

/media/

Mount points for removable media such as CD-ROMs (appeared in FHS-2.3)

?Anchor(opt)

/opt/

Add-on application software packages ?BR Pre-compiled, non ".deb" binary distribution (tar'ed..) goes here.

  • /opt/bin/ : Same as for top-level hierarchy
  • /opt/include/ : Same as for top-level hierarchy
  • /opt/lib/ : Same as for top-level hierarchy
  • /opt/sbin/ : Same as for top-level hierarchy
  • /opt/share/ : Same as for top-level hierarchy
  • ?Anchor(proc)

    /proc/

    Virtual filesystem documenting kernel and process status, mostly text files (e.g., uptime, network)

    ?Anchor(root)

    /root/

    Home directory for the root user

    ?Anchor(sbin)

    /sbin/

    System administrative binaries (e.g., init, route, ifup) (system binaries) ?BR (files required to boot or rescue the system)

    ?Anchor(tmp)

    /tmp/

    Temporary files

    ?Anchor(srv)

    /selinux/
    SE-Linux runtime settings (Not part of FHS).

    ?Anchor(srv)

    /srv/

    Site-specific data which is served by the system (Not part of FHS).

    ?Anchor(sys)

    /sys/

    The filesystem for exporting kernel objects.?BR (many /proc/* files should have been here...)

    ?Anchor(usr)

    /usr/

    Secondary hierarchy for shareable, read-only data (formerly from UNIX source repository, now from UNIX system resources) ?BR (files that are not-required to boot or rescue the system)

  • /usr/bin/ : Same as for top-level hierarchy
  • /usr/include/ : Standard include files

  • /usr/lib/ : Same as for top-level hierarchy
  • /usr/sbin/ : Same as for top-level hierarchy
  • /usr/share/ : Architecture-independent (shared) data

  • /usr/src/ : Source code (to build debian packages. see also /usr/local/src/)

  • /usr/!X11R6/ : X Window System, Version 11 Release 6

  • /usr/local/ : Tertiary hierarchy for local data installed by the system administrator

    • /usr/local/bin : locally compiled binaries, local shell script, etc.
    • /usr/local/src : Source code (place where to extract and build non debian'ized stuffs)

  • ?Anchor(var)

    /var/

    Variable data, such as logs, databases, websites, and temporary spool (e-mail..) files


    ?CategoryFileSystem