Unix file permissions: octal ↔ symbolic, setuid/setgid/sticky. Free, private, runs in your browser.
100% private — your files never leave your browser. All processing happens locally on your device.
| Read | Write | Execute | |
|---|---|---|---|
| user | |||
| group | |||
| other |
Octal
0754
Symbolic
-rwxr-xr--
Command
chmod 0754 file
Unix file permissions have two written forms: an octal number (like 755 or 0644) that maps directly to the bit pattern, and a symbolic string (-rwxr-xr-x) that visually separates owner, group, and other permissions. Both convey the same information. The tool converts between them in both directions — set permissions via the checkbox grid, see both forms update live; or paste an octal / symbolic form into the reverse field and the grid updates.
A basic chmod has three triads of three bits each: owner (who owns the file), group (users in the file's group), and other (everyone else). Each triad has read (r, value 4), write (w, value 2), and execute (x, value 1) bits. Sum them for the octal digit — rwx is 7, r-x is 5, r-- is 4. So chmod 754 is rwxr-xr-- — owner can do everything, group can read and execute, other can only read.
There's a fourth leading digit for three special bits: setuid (4), setgid (2), and sticky (1). Setuid on an executable makes it run with the permissions of the file's owner regardless of who invoked it — that's how 'sudo' works. Setgid on a directory means new files and subdirectories inherit the directory's group. The sticky bit on a directory means only the file's owner can delete or rename files inside, classically used on /tmp so users can't delete each other's files. In symbolic form these show as 's' or 't' in place of 'x'; uppercase 'S'/'T' when the bit is set but execute is not (a warning that the special bit won't actually do anything).
Alongside the octal and symbolic forms, the tool outputs the complete `chmod` command for copy-pasting into a terminal. Replace 'file' with your actual filename and you're done. No need to remember whether to pass the octal as '755' or '0755' (both work; the leading 0 makes the octal explicit and is good shell-script hygiene).
File-permissions calculations don't need a server. Everything runs in your browser. Useful both as a quick reference while writing shell scripts and as a teaching aid when onboarding someone to Unix permissions.
The leading digit encodes the special bits: 4 = setuid, 2 = setgid, 1 = sticky, summed. When a file with setuid is executed, it runs with the permissions of the file's owner. setgid on a directory makes new files inherit its group. The sticky bit on a directory means only the owner of a file can delete it — historically used on /tmp.
When setuid is on and user execute is also on, symbolic form shows 's' in place of 'x' in the user triad. If setuid is on but user execute is off, it shows capital 'S' to warn you — the setuid bit is set but won't actually do anything without execute. Same pattern for setgid (group triad) and sticky (other triad, using 't' / 'T').
Paste an octal number (755 or 0755 or 4755) or symbolic form (rwxr-xr-x or -rwxr-xr-x) into the reverse field and the grid updates. Useful for understanding what permissions a script you're reading actually sets.