Use the free Chmod Permission Calculator below: your data never leaves your browser — all work happens on your device, and nothing is uploaded to any server.
What Are Linux File Permissions?
Every file and folder on a Linux system carries three sets of permissions: one for the owner, one for the group, and one for everyone else. Each set has three switches: read, write, and execute. Read lets you view a file or list a folder. Write lets you change a file or add and remove entries in a folder. Execute lets you run a file as a program, or enter a folder to reach what is inside it. The chmod command changes these switches, and its numeric form is the fastest way to set them exactly.
Each switch has a number: read is 4, write is 2, and execute is 1. Add the numbers for the switches you want, and you get one digit per set. Read plus write is 6. Read plus execute is 5. All three is 7. Nothing is 0. So 644 means the owner can read and write (6), while the group and everyone else can only read (4). The calculator above does this addition in both directions: tick boxes and see the number, or type the number and see the boxes.
How to Use the Calculator
Tick the boxes for owner, group, and others, and the octal number and symbolic string update at once. The symbolic string is the form you see in ls -l output, like rw-r–r–, where a dash means the switch is off. If you already know the number, type it in the octal box and press Apply octal, and the checkboxes follow. Numbers with four digits include the special bits: setuid (4), setgid (2), and sticky (1). A four-digit value like 4755 means setuid plus the usual 755.
The tool also shows the full chmod command, ready to copy. For a file you own, running chmod 644 notes.txt sets exactly the permissions shown. For a script you want to run, chmod 755 script.sh makes it executable for everyone while only you can change it. For a private key or a file with passwords, chmod 600 secret.txt locks it to you alone. Always test with ls -l after you change permissions, so you see the result rather than trusting your memory.
The Values You Will Use Most
For ordinary files, 644 is the default almost everywhere: you can edit, everyone can read. For scripts and programs, 755 is standard: you can edit and run, everyone can run and read. For folders, 755 lets everyone enter and list, while you keep control of changes. For private files, 600 keeps everyone else out entirely. For a shared project folder where the group must edit, 775 or 2775 with setgid keeps new files in the group, which saves a lot of permission fixing later.
Folders and files behave differently with the same digits, and that trips people up. Execute on a file means run it. Execute on a folder means enter it. A folder with 644 and no execute bit cannot be entered at all, even by its owner, which produces confusing permission denied errors for files inside that look readable. If a path fails, check every folder above it too, because one locked folder blocks the whole path.
Special Bits, Used Carefully
Setuid lets a program run with the owner’s rights instead of the runner’s rights. It is powerful and risky: a setuid program with a flaw can hand out the owner’s power to anyone. Only use it on programs you trust and understand, and never on scripts. Setgid on a folder makes new files inherit the folder’s group, which is genuinely useful for teams. The sticky bit on a shared folder, as in 1777 for /tmp, lets users delete only their own files, not each other’s. These bits solve real problems, but each one deserves a moment of thought before you set it.
The most common permission disaster is the recursive chmod, like chmod -R 777 on a whole project. It fixes the immediate error by opening everything to everyone, and it creates a security hole that is hard to undo, because the original settings are gone. If you are tempted, stop and find the one file or folder that actually needs changing. The calculator helps you get that one value right, and a careful, narrow change beats a broad one every time.
