Glossary

/home

/home is where ordinary users' home directories live. A user named alice typically has /home/alice as her home directory, referenced in her /etc/passwd entry and available to her shell as the ~ or $HOME expansion. Under it she keeps her documents, code, downloads, and—crucially—her dotfiles (~/.bashrc, ~/.config/, ~/.local/share/) that configure her personal environment.

On multi-user systems, /home is usually a separate partition or filesystem. This has several advantages: it can grow independently of the root filesystem; it can be reformatted or reinstalled without losing user data; it can be shared between multiple Linux installs on the same machine; and in larger deployments, it can be a network filesystem (NFS, CIFS) mounted from a central server so that users see the same home directory on every machine.

Convention separates system-level from user-level state. System configuration lives under /etc, per-user configuration under ~/.config/ (following the XDG Base Directory Specification). Keeping $HOME organised, backed up, and preferably under version control (via dotfile repositories) saves untold grief when switching machines or recovering from disaster. On macOS the analogue is /Users; Windows's C:\\Users\\ plays a similar role.

Related terms: Filesystem Hierarchy Standard, Dotfile

Discussed in:

Also defined in: Textbook of Linux