Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
Navigation

Filesystem Hierarchy Standard

This standard consists of a set of requirements and guidelines for file and directory placement under UNIX-like operating systems. The guidelines are intended to support interoperability of applications, system administration tools, development tools, and scripts as well as greater uniformity of documentation for these systems.

Authors:
X.Org Foundation / FreeDesktop
Filesystem Hierarchy Standard Project

Publication Date: 2025-11-06, Version: Version 3.0

Dedication

This release is dedicated to the memory of Christopher Yeoh, a long-time friend and colleague, and one of the original editors of the FHS. Without his dedication this work would not have been possible.

1 Introduction
1.1 Purpose
1.2 Conventions
2 The Filesystem
3 The Root Filesystem
3.1 Purpose
3.2 Requirements
3.3 Specific Options
3.4 /bin : Essential user command binaries (for use by all users)
3.5 /boot : Static files of the boot loader
3.6 /dev : Device files
3.7 /etc : Host-specific system configuration
3.8 /home : User home directories (optional)
3.9 /lib : Essential shared libraries and kernel modules
3.10 /lib<qual> : Alternate format essential shared libraries (optional)
3.11 /media : Mount point for removable media
3.12 /mnt : Mount point for a temporarily mounted filesystem
3.13 /opt : Add-on application software packages
3.14 /root : Home directory for the root user (optional)
3.15 /run : Run-time variable data
3.16 /sbin : System binaries
3.17 /srv : Data for services provided by this system
3.18 /tmp : Temporary files
4 The /usr Hierarchy
4.1 Purpose
4.2 Requirements
4.3 Specific Options
4.4 /usr/bin : Most user commands
4.5 /usr/include : Directory for standard include files.
4.6 /usr/lib : Libraries for programming and packages
4.7 /usr/libexec : Binaries run by other programs (optional)
4.8 /usr/lib<qual> : Alternate format libraries (optional)
4.9 /usr/local : Local hierarchy
4.10 /usr/sbin : Non-essential standard system binaries
4.11 /usr/share : Architecture-independent data
4.12 /usr/src : Source code (optional)
5 The /var Hierarchy
5.1 Purpose
5.2 Requirements
5.3 Specific Options
5.4 /var/account : Process accounting logs (optional)
5.5 /var/cache : Application cache data
5.6 /var/crash : System crash dumps (optional)
5.7 /var/games : Variable game data (optional)
5.8 /var/lib : Variable state information
5.9 /var/lock : Lock files
5.10 /var/log : Log files and directories
5.11 /var/mail : User mailbox files (optional)
5.12 /var/opt : Variable data for /opt
5.13 /var/run : Run-time variable data
5.14 /var/spool : Application spool data
5.15 /var/tmp : Temporary files preserved between system reboots
5.16 /var/yp : Network Information Service (NIS) database files (optional)
6 Operating System Specific Annex
6.1 Linux
7 Appendix
7.1 The FHS mailing list
7.2 Background of the FHS
7.3 General Guidelines
7.4 Scope
7.5 Acknowledgments
7.6 Contributors

All trademarks and copyrights are owned by their owners, unless specifically noted otherwise. Use of a term in this document should not be regarded as affecting the validity of any trademark or service mark.

Permission is granted to make and distribute verbatim copies of this standard provided the copyright and this permission notice are preserved on all copies.

Permission is granted to copy and distribute modified versions of this standard under the conditions for verbatim copying, provided also that the title page is labeled as modified including a reference to the original standard, provided that information on retrieving the original standard is included, and provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.

Permission is granted to copy and distribute translations of this standard into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the copyright holder.