Know where everything lives on Linux
Every Linux system follows the Filesystem Hierarchy Standard (FHS), which assigns a clear purpose to each top-level directory. Configuration goes in /etc, logs and spools in /var, user programs in /usr, and live kernel state in the virtual /proc and /sys. This reference lets you search any path and instantly see what it is for, what files you will find there, and whether it is safe to write to.
How it works
The FHS separates files along two axes: shareable vs unshareable (can it be served to other hosts) and static vs variable (does it change at runtime). That is why read-only program files live under /usr while changing data lives under /var, and why machine-specific configuration sits in /etc. The virtual filesystems /proc and /sys are special: they hold no real files on disk but expose kernel and device state that you can read, and in some cases write, to tune the running system. Filtering matches the path, its purpose and example contents, so searching logs, /var, or config finds the right entry.
Tips and notes
Put your own manually-installed software in /usr/local or /opt, never directly in /usr, so the package manager does not overwrite it. Treat /etc as the place to look first when configuring a service. Remember /proc and /sys are live windows into the kernel — cat /proc/cpuinfo and cat /sys/class/net/*/address read real state, and writing to files like /proc/sys/... (better done via sysctl) changes kernel behaviour immediately. Use /tmp for throwaway files and /var/tmp only when the data must survive a reboot.