Filesystem practice

Filesystem practice

Where Things Live in Linux

A practical guide to finding Linux user files, system configuration, logs, packages, services, devices, and temporary data.

Audience
Beginners who want a mental map
Reading time
12 min

The practical map

When you know the purpose of a path, Linux becomes much easier to navigate. Most mysteries reduce to a few questions: Is this user-specific or system-wide? Is it configuration, data, logs, cache, runtime state, or a program file?

The practical map
Looking forStart hereWhy
Your documents/home/yournameHome directories hold personal files
User app settings~/.config, ~/.local/sharePer-user configuration and state
System configuration/etcMachine-wide settings live here
Logsjournalctl, /var/logSystemd journal and traditional log files
Package-managed programs/usr/bin, /usr/lib, /usr/shareInstalled by the package manager
Third-party app bundles/optOptional vendor applications
Service data/var/lib/service-namePersistent state for daemons
Web or service content/srvSite-specific service data on some systems
Temporary files/tmp, /var/tmpShort-lived scratch data
Devices/devKernel device nodes
Live process data/procKernel-generated process and system view

Common examples

Avoid editing package-managed program files under /usr unless you are deliberately doing local system administration. Prefer configuration in /etc, user configuration in your home directory, or package-supported override locations.

Find distribution info
cat /etc/os-release
Find what uses disk under /var
sudo du -h -d 1 /var | sort -h
Read logs for a service
journalctl -u ssh --since today