Skip to main content
Kill -9 Club
Sign in

traverse permission (x on a directory)

Files

On a directory, x does not mean execute: it means you may pass through it and look up a name inside. Read the columns of ls -l as three sets and x looks like a bit that only matters for programs; on a directory it is the bit that decides whether anything below is reachable at all. Ubuntu 24.04 creates home directories at mode 0750 — HOME_MODE 0750 in /etc/login.defs — so /home/alice is drwxr-x---. An -rw-r--r-- file inside it is world-readable and still unreachable: sudo -u www-data cat /home/alice/index.html answers Permission denied. Every directory on the path needs x for the account doing the reading, which is why an unexplained 403 is nearly always a parent directory rather than the file. namei -l prints the whole chain and shows where traversal stops.

Also written: search permission, execute bit on a directory

traverse permission (x on a directory) — definition | Kill -9 Club