Set Unix/Linux file permissions visually. Toggle checkboxes to build your permission set, enter an octal number to reverse-lookup, or pick from common presets. Copy the numeric value, symbolic notation, or full chmod command.
| Read | Write | Execute | Octal | |
|---|---|---|---|---|
| owner | 7 | |||
| group | 5 | |||
| other | 5 |
Every file and directory on a Unix or Linux system has an associated set of permissions that control who can read, write, or execute it. Permissions are divided among three classes—the file's owner, the owning group, and others (everyone else). Each class can independently be granted read (r), write (w), and execute (x) access.
The most compact way to express permissions is octal notation. Each permission maps to a bit value: read = 4, write = 2, execute = 1. Summing these values for each class produces a single digit (0–7), and the three digits together form the permission mode. For example, 755 means the owner has full access (7 = 4+2+1), while the group and others can read and execute but not write (5 = 4+1).
Symbolic notation uses letters to represent permissions. A nine-character string like rwxr-xr-x shows the permission state for owner, group, and other in that order. A dash indicates the permission is not set. This format matches the output of ls -l on Unix systems.
The chmod (change mode) command is the standard tool for modifying file permissions. It accepts either numeric or symbolic arguments. Numeric mode sets all permissions at once (e.g., chmod 644 file.txt), while symbolic mode allows incremental changes (e.g., chmod g+w file.txt to add group write). This calculator focuses on numeric mode, which is the most common form used in scripts, deployment configs, and documentation.
Beyond the basic nine permission bits, Unix supports three special bits that form an optional leading digit in octal notation:
/tmp.644 — Default for regular files. Owner reads and writes; everyone else reads.755 — Default for directories and scripts. Owner has full access; others read and execute.600 — Private files such as SSH keys. Only the owner can read and write.777 — Full access for everyone. Rarely recommended outside development.750 — Owner full, group read/execute, no access for others.Dealing with complex server configurations, deployment pipelines, or security hardening? Our development team can help you build secure, production-ready infrastructure. Get in touch for a free consultation.
755 to reverse-lookup and see the corresponding checkbox state.rwxr-xr-x), or the full chmod command to paste into your terminal.600) to satisfy strict OpenSSH requirements755 for directories and 644 for fileschmod 777 grants read, write, and execute permissions to everyone — owner, group, and others. This is a security risk on production servers because any user on the system can modify or execute the file. Use it only in isolated development environments.
chmod changes file permissions (what actions are allowed), while chown changes file ownership (who the owner and group are). Both commands work together to control access on Unix systems. Use our calculator for chmod and consult your sysadmin for ownership changes.
These are an optional leading digit in octal notation. Setuid (4) runs executables as the file owner. Setgid (2) inherits the directory's group for new files. Sticky bit (1) prevents users from deleting files they don't own in shared directories like /tmp. For complex server setups, our DevOps services and cloud services team can help.