The chmod calculator
developers actually want.
Convert between octal, symbolic, and binary permission formats in real-time. Includes special bits, presets, command builder, and permission explainer.
Calculate file permissions.
Toggle checkboxes, type octal or symbolic — everything syncs live.
Select permissions to see a plain-English explanation.
chmod 0000 filenameEnter a umask value to see effective file & directory permissions.
644 (-rw-r--r--)755 (drwxr-xr-x)Common permission patterns.
Click any preset to instantly load it into the calculator.
Permission values explained.
Each digit in the octal notation represents one of three permission groups.
Octal values (0–7)
| Octal | Binary | Symbolic | Description |
|---|---|---|---|
0 | 000 | --- | No permissions |
1 | 001 | --x | Execute only |
2 | 010 | -w- | Write only |
3 | 011 | -wx | Write & execute |
4 | 100 | r-- | Read only |
5 | 101 | r-x | Read & execute |
6 | 110 | rw- | Read & write |
7 | 111 | rwx | Read, write & execute |
Understanding the 4-digit format
The first digit is the special bits field (Setuid=4, Setgid=2, Sticky=1). The remaining three digits are Owner, Group, and Others respectively.
Frequently Asked Questions
Quick answers to common Linux file permission & chmod command queries.
chmod 755 (rwxr-xr-x) grants full read, write, and execute rights to the file owner, and read/execute access to group members and public users. chmod 777 (rwxrwxrwx) grants full read, write, and execute access to EVERY user on the system, making 777 a severe security risk on production web servers.
Linux permissions are calculated using a 4-2-1 bit sum rule for three user classes: Owner, Group, and Others. Read=4, Write=2, and Execute=1. For example, Read (4) + Execute (1) = 5. Combining the three totals forms a 3-digit octal number like 755 or 644.
drwxrwxrwx corresponds to a directory (d) with chmod 777 permissions. It indicates that the folder is world-writable, allowing any local user or web process to read, create, modify, or delete files inside it.
chmod 600 (-rw-------) grants read and write access exclusively to the file owner. Group members and public users are granted zero access (00). It is required by OpenSSH for private keys (~/.ssh/id_rsa) and application credential files (.env).
chmod 666 (-rw-rw-rw-) grants read and write permissions to everyone (owner, group, and others), but no execute permissions. It represents the base unmasked creation mode for regular files before umask rules filter out bits.
The key difference is public write access. chmod 755 allows only the file owner to edit or delete files while others can only read and execute. chmod 777 allows ANY user or process to overwrite or delete files, creating major security vulnerabilities.
0600 is the 4-digit octal notation for chmod 600. The leading 0 indicates that no special bits (Setuid=0, Setgid=0, Sticky Bit=0) are active. The remaining digits 600 grant read and write access to the file owner only.
chmod 0700 (-rwx------) grants full read, write, and execute permissions to the file owner while completely blocking access for group members and others. It is commonly used for private executable scripts and user-only folders.
Both 600 and 700 restrict file access exclusively to the file owner. The difference is execution: 600 grants Read & Write (rw-------) for private documents and keys, while 700 grants Read, Write & Execute (rwx------) for private shell scripts or folders.
chmod 555 (-r-xr-xr-x) grants read and execute permissions to everyone (owner, group, and others), but removes write permissions for ALL users including the owner. It is used to make files or scripts read-only to prevent accidental modifications.