Reading Unix permissions
Every file on Linux and macOS has three sets of permissions: for its owner, its group and others. Each set allows read (r), write (w) and execute (x). In octal each permission is a value (read 4, write 2, execute 1) and each set is the sum, giving three digits: 7 = rwx, 6 = rw-, 5 = r-x, 4 = r--.
The common modes: 644 for regular files (owner edits, everyone reads), 755 for directories and scripts (everyone can enter or run them), 600 for private keys and 700 for private directories. Avoid 777: anyone on the system can change the file.
Special bits
A fourth, leading digit sets setuid (4: run as the file's owner), setgid (2: run as the group, or new files inherit the directory's group) and sticky (1: in shared directories like /tmp, only owners can delete their files). 4755 is shown as rwsr-xr-x.
Worked example
750 → owner 7 (rwx), group 5 (r-x), others 0 (---): rwxr-x---. A team directory that colleagues can browse but outsiders cannot see.
How this works
For octal input, the page reads each digit as three bits (read, write, execute) for owner, group and others, and the optional fourth digit from the left as the setuid, setgid and sticky bits. For symbolic input it reverses the process, accepting the nine characters shown by ls -l with or without the leading file-type character. It shows the octal and symbolic forms, the chmod command and a plain-language list of permissions for each class. Special bits appear as s/S and t/T in the execute positions, uppercase when execute itself is off.
Frequently asked
What does chmod 755 mean?
Owner: read, write, execute. Group and others: read and execute. Typical for directories and scripts.
What is the difference between 644 and 664?
664 also lets the group write. 644 lets only the owner write.
What does a capital S or T mean?
The setuid/setgid or sticky bit is set but execute is not, which is usually a mistake for files.
Is chmod 777 ever a good idea?
Rarely. It lets every user modify or replace the file. Prefer 755 or 775 with the right group.
Sources
Reviewed Oct 17, 2026 · test vectors fixtures/dev/chmod-calculator/