> For the complete documentation index, see [llms.txt](https://blog.syselement.com/tcm/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://blog.syselement.com/tcm/courses/linux-101/3-filesystem/fs-hierarchy.md).

# Filesystem Hierarchy Standard

> 📌 [FHS - Filesystem Hierarchy Standard](https://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html)

![Filesystem Hierarchy Standard](https://1178537843-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F2KUxfxUFmy000PDT7MtM%2Fuploads%2Fgit-blob-834349b3468472f0863596b58b5ce0bd10686084%2Ffhs2.png?alt=media)

* Most Linux distribution follow the [**Filesystem Hierarchy Standard**](https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard) as a reference for the layout of the Unix system.

```bash
# Show the standard with the command:
man hier
```

* All files and directories appear under the primary hierarchy root and entire file system root directory **`/`**.

**`/bin`** - stores important executable programs (binaries).

**`/boot`** - boot loader files used to boot the system (kernel, initrd).

**`/dev`** - device files for physical devices (mouse, hdds, standard in/out, standard error).

**`/etc`** - local system-wide configuration files for programs.

**`/home`** - personal directories of all users.

**`/lib`** - essential shared libraries for binaries to run

**`/media`** - mount point for removable media.

**`/mnt`** - mount point for temporary file systems.

**`/opt`** - additional software not found in the distribution repositories, custom utilities and packages, accessible to everyone.

**`/proc`** - information about running processes, the kernel and system hardware.

**`/root`** - home directory for the root user.

**`/sbin`** - essential binaries available only to the root user.

**`/tmp`** - temporary files used by the system, usually cleared on boot, not for important storage.

**`/usr`** - contains important subdirectories, read-only data programs.

**`/var`** - contains dynamic program data (logs, spool), troubleshooting log files.

***
