Linux filesystem hierarchy

The location of systems files (binaries, configurations, logs, devices, docs...) are typically a nightmare for a junior operator handling with Unix dialects.

There are Unix standards, there's a Filesystem Hierarchy Standard, there's the distro maintainer's choice but, most of all you have tools useful to locate files positions: which, locate, whereis, whatis, apropos, find...
In the apparent chaos of nested directories there's still coherence and login:
/bin - Essential user command binaries (for use by all users)
/boot - Static files of the boot loader
/devDevice files
/etc - Host-specific system configuration
/home - User home directories (optional)
/lib - Essential shared libraries and kernel modules
/media - Mount point for removeable media
/mnt - Mount point for a temporarily mounted filesystem
/opt - Add-on application software packages
/root - Home directory for the root user (optional)
/sbin - System binaries
/srv - Data for services provided by this system
/tmp - Temporary files
/proc - Kernel and process information virtual filesystem
      
/var - Variable files that change their size
/usr - Users commands and tools
    
/var/account - Process accounting logs (optional)
/var/cache - Application cache data
/var/crash - System crash dumps (optional)
/var/lib - Variable state information
/var/lock - Lock files
/var/log - Log files and directories
/var/mail - User mailbox files (optional)
/var/opt - Variable data for /opt
/var/run - Run-time variable data
/var/spool - Application spool data
/var/tmp - Temporary files preserved between system reboots
/usr/X11R6 - X Window System, Version 11 Release 6 (optional)
/usr/bin - Most user commands
/usr/include - Directory for standard include files
/usr/lib - Libraries for programming and packages
/usr/local - Local hierarchy
/usr/sbin - Non-essential standard system binaries
/usr/share - Architecture-independent data
/usr/src - Source code (optional)

Privacy Policy