Short overview of common Linux directories and their intended uses.
Originally intended for programs that needed to be on a small root partition (/) before the larger partitions (/usr, etc.) were mounted. This is still relevalnt for embedded devices.
On regular devices, serves as a standard location for key programs like /bin/sh.
Same as /bin, but for system management programs that are not normally ran by users.
For normal user programs managed by the distribution or package manager. Any changes made here can be overwritten or deleted by the package manager.
For system management programs managed by the distribution package manager.
For normal user programs NOT managed by the distribution package manager (e.g. locally compiled packages).
For system management programs NOT managed by the distribution package manager.
For programs that are available only for the current user.
For configuration files.
For "optional" software NOT managed by the distribution package manager. Unlike the regular *nix-style software where executables, libraries, and configuration files are stored in corresponding directories, software directory under /opt (e.g: /opt/myapplication) contains everything in the same directory.