🐧 Linux

Linux chmod Calculator

Toggle read, write and execute permissions for user, group and other to instantly compute the octal value, symbolic notation, and the chmod command to run.

⚡ Quick Set
🔧 Toggle Permissions
📊 Results
chmod 755 filename
📖 How to Use This Tool
1
Toggle Read/Write/Execute for Owner, Group, Others
2
Or enter octal (755) — checkboxes update
3
View symbolic notation and chmod command
4
Use presets for common permissions
📝 Examples
755
Input: Owner:rwx Group:r-x Others:r-x
Output: chmod 755 filename

Permission Habits Worth Locking In

Enforcing Permissions From the Pipeline

Rather than SSH-ing into a server to fix a "permission denied" error after the fact, most teams add an explicit permissions step to their build or deploy pipeline so file modes are deterministic across every environment. A typical CI job clones the repository and runs something like chmod 755 scripts/deploy.sh scripts/*.sh before the artifact is packaged, guaranteeing the script is executable regardless of what mode it carried in Git — Git itself only tracks a single executable bit (mode 100755 vs 100644), which is far coarser than the full owner/group/other model this calculator computes.

A Dockerfile's COPY --chmod=755 instruction, supported by modern BuildKit, achieves the same outcome at image-build time and is worth using instead of a separate RUN chmod layer, since it sets the mode without creating an extra filesystem layer just to fix permissions afterward.

The Arithmetic Behind the Octal Digit

Each of the three permission categories — owner, group, and other — is represented by one octal digit derived from summing powers of two: read contributes 4, write contributes 2, and execute contributes 1. Because those three values are distinct powers of two, every combination of the three bits produces a unique sum from 0 through 7, which is why a single digit can unambiguously encode any combination of read, write, and execute. The calculator mirrors this directly: it stores three rows of three booleans, recomputes each row's sum live as a checkbox toggles, concatenates the three sums into the octal string, and renders the symbolic form by mapping each bit to its letter or a dash — the same bit-packing logic the Linux kernel itself uses internally when storing a file's mode.

Situations Where This Comes Up

Frequently Asked Questions

What does chmod 755 mean?

chmod 755 sets permissions to rwxr-xr-x: the owner (user) can read, write, and execute the file; members of the file's group can read and execute but not write; and all other users on the system can also read and execute but not write. This is the standard permission for executable shell scripts, compiled binaries, and directories that need to be accessible to everyone on the system. For directories specifically, the execute bit controls the ability to list and traverse the directory's contents.

What is the difference between chmod 644 and 755?

chmod 644 (rw-r--r--) gives the owner read and write access, and all others read-only access. This is the correct permission for regular files that should be readable by all users but only modifiable by the owner — configuration files, HTML pages, and CSS files are common examples. chmod 755 (rwxr-xr-x) adds execute permission for all three groups, which is required for shell scripts, compiled executables, and directories. Using 755 on a plain text file is not harmful but it is unnecessary; using 644 on a script will cause "permission denied" when you try to run it directly.

What is the difference between user, group and other in Linux permissions?

Linux permission bits are divided into three categories. "User" (also called owner) refers to the specific user account that owns the file — usually whoever created it. "Group" refers to any user account that is a member of the file's owning group, which is a way to grant shared access within a team (for example, all members of a "developers" group) without granting access to the entire system. "Other" refers to all remaining users — anyone who is neither the owner nor a member of the owning group. Each category independently controls the read (r=4), write (w=2), and execute (x=1) bits.