Arch Linux Filesystem
The Arch Linux packaging environment mandates a standards-structured file system. This structure is instantiated and maintained by the filesystem package. While manual changes can of course be made, breaking changes will be caught by the pacman packager and trigger (harmless) failure during upgrades.
For information on setting up a file system, see here.
Contents
Directories
/ ├─ bin -> /usr/bin ├─ boot root root rwxr-xr-x ├─ dev root root rwxr-xr-x ├─ etc root root rwxr-xr-x ├─ home root root rwxr-xr-x ├─ lib -> /usr/lib ├─ lib64 -> /usr/lib ├─ mnt root root rwxr-xr-x ├─ opt root root rwxr-xr-x ├─ proc root root r-xr-xr-x ├─ root root root rwxr-x--- ├─ run root root rwxr-xr-x ├─ sbin -> /usr/bin ├─ srv root root rwxr-xr-x │ ├─ http root root rwxr-xr-x │ └─ ftp root ftp r-xr-xr-x ├─ sys root root r-xr-xr-x ├─ tmp root root rwxrwxrwx ├─ usr root root rwxr-xr-x │ ├─ bin root root rwxr-xr-x │ ├─ include root root rwxr-xr-x │ ├─ lib root root rwxr-xr-x │ ├─ lib64 -> /usr/lib │ ├─ local root root rwxr-xr-x │ │ ├─ bin root root rwxr-xr-x │ │ ├─ etc root root rwxr-xr-x │ │ ├─ games root root rwxr-xr-x │ │ ├─ include root root rwxr-xr-x │ │ ├─ lib root root rwxr-xr-x │ │ ├─ man root root rwxr-xr-x │ │ ├─ sbin root root rwxr-xr-x │ │ ├─ share root root rwxr-xr-x │ │ │ └─ man -> /usr/local/man │ │ └─ src root root rwxr-xr-x │ ├─ share root root rwxr-xr-x │ │ ├─ man root root rwxr-xr-x │ │ ├─ misc root root rwxr-xr-x │ │ └─ pixmaps root root rwxr-xr-x │ ├─ sbin -> /usr/sbin │ ├─ src root root rwxr-xr-x ├─ var root root rwxr-xr-x │ ├─ empty root root rwxr-xr-x │ ├─ games root games rwxrwxr-x │ ├─ lib root root rwxr-xr-x │ │ └─ misc root root rwxr-xr-x │ ├─ lock -> /run/lock │ ├─ log root root rwxr-xr-x │ │ └─ old root root rwxr-xr-x │ ├─ mail -> /var/spool/mail │ ├─ opt root root rwxr-xr-x │ ├─ run -> /run │ ├─ spool root root rwxr-xr-x │ │ └─ mail root root rwxr-xr-x │ └─ tmp root root rwxr-xr-x
All system-wide bins are symlinks to /usr/bin, and all system-wide libs are symlinks to /usr/lib.
The local directory mirrors the usr directory, except that manual pages (man) are pulled to the top-level instead of being nested under share.
The true runtime directory is the root-level /run, though legacy symlinks are also created.
Files
The filesystem package also installs a number of default configurations. These will commonly be edited and overwritten by users without leading to any breakage in the Arch Linux environment, so there's little purpose to documenting them.