Unix File Permissions & chmod Calculator Online
Free chmod calculator — convert between numeric (755) and symbolic (rwxr-xr-x) Linux file permissions instantly. Per-bit breakdown for owner, group, and other.
Numeric (Octal)
Symbolic
chmod command
chmod 755 filename
Common Presets
Bit Reference — Octal Values
| Bit | Owner | Group | Other |
|---|---|---|---|
| Read (r) | 400 | 040 | 004 |
| Write (w) | 200 | 020 | 002 |
| Execute (x) | 100 | 010 | 001 |
Unix & Linux File Permissions & chmod Explained
Unix File Permissions & chmod Calculator is a free browser-based tool that converts between numeric (octal) and symbolic Unix/Linux file permissions. Toggle the read/write/execute bits for owner, group, and other — and see the chmod value update instantly. Or type a value like 755 or rwxr-xr-x and the checkboxes update to match.
Linux/Unix permissions control access at the file system level. Every file and directory has three groups — owner, group, and other — each with independent read (4), write (2), and execute (1) bits. The sum of those bits gives one octal digit per group: chmod 755 = owner full access (7), group and other read+execute (5). This calculator makes that arithmetic instant and visual.
All conversion runs entirely in your browser — nothing is sent to any server.
Common chmod Use Cases
- Calculate the correct chmod value before running it on a production Linux server.
- Decode what an existing numeric permission like 644 or 700 actually allows.
- Set SSH key file permissions (chmod 600) and directory permissions (chmod 700).
- Configure web server file permissions for nginx or Apache document roots (755/644).
- Understand what rwxr-xr-x means when you see it in ls -l output.
- Set correct chmod permissions for cron job scripts that need to be executable.
- Harden a server by identifying files that are too permissive (chmod 777, 666).
- Learn Linux file permissions interactively by toggling bits and seeing results live.
Frequently Asked Questions
What do Unix file permissions mean?
Unix/Linux permissions control who can read, write, or execute a file or directory. They are divided into three groups: owner (the user who created the file), group (members of the file's group), and other (everyone else). Each group has three bits: read (r = 4), write (w = 2), and execute (x = 1).
What does chmod 755 mean?
chmod 755 sets permissions to rwxr-xr-x. The owner has full read/write/execute access (7 = 4+2+1). The group and others can read and execute but not write (5 = 4+1). This is the standard permission for executables and public directories on Linux and macOS.
What does chmod 644 mean?
chmod 644 sets permissions to rw-r--r--. The owner can read and write (6 = 4+2), but group and others can only read (4). This is the standard permission for regular files served by a web server — the nginx or Apache process can read the file, but no one can accidentally overwrite it.
What does chmod 600 mean?
chmod 600 sets permissions to rw------- — read and write for the owner only, no access for group or others. This is the required permission for private SSH keys (~/.ssh/id_rsa). If the key is group- or world-readable, the ssh client will refuse to use it with a "Permissions are too open" error. The ~/.ssh directory itself should be chmod 700.
How do I change file permissions in Linux?
Use the chmod command: chmod 755 filename sets numeric permissions, chmod u+x filename adds execute for the owner using symbolic notation. To change permissions recursively on a directory: chmod -R 755 /path/to/dir. Use ls -l to view current permissions — the 10-character string at the start (e.g. -rwxr-xr-x) shows the file type and all nine permission bits.
What is the difference between numeric and symbolic permissions?
Numeric (octal) permissions represent each group as a single digit 0–7 where each bit adds its value (r=4, w=2, x=1). Symbolic permissions spell it out as a 9-character string like rwxr-xr-x — easier to read but less compact. Both describe the same permission state. chmod accepts both: chmod 755 and chmod u=rwx,go=rx are equivalent.
What does the execute bit mean on a directory?
On a directory, the execute bit means "search" — the right to enter the directory (cd into it) and access files within it. A directory without execute permission is unenterable even if read is set. chmod 755 on a directory gives the owner full access and lets everyone else list and enter it.
What is a setuid, setgid, or sticky bit (4-digit chmod)?
Beyond the standard 9 bits, Linux supports three special bits expressed as a leading digit: setuid (4) runs an executable as its owner (e.g. chmod 4755 = -rwsr-xr-x), setgid (2) on a directory makes new files inherit the directory's group, and sticky (1) on a directory prevents users from deleting files they don't own (e.g. chmod 1777 on /tmp). This calculator covers the standard 3-digit octal used in everyday chmod operations.
What is umask and how does it relate to permissions?
umask is a mask that subtracts bits from the default permissions assigned to new files and directories. A common umask of 022 means new files get 644 (666 minus 022) and new directories get 755 (777 minus 022). Run umask in your shell to see the current value. It is the inverse of chmod — instead of setting permissions, it removes them from the default.
Why should I avoid chmod 777?
chmod 777 (rwxrwxrwx) grants all users on the system read, write, and execute access. On a web server this lets any process or user overwrite your files, execute malicious scripts, or read private data. Use the most restrictive permission that still lets your application work.
Related Tools
JSON Formatter Online
Format, validate, and minify JSON
Base64 Encoder Online
Encode and decode Base64 strings
URL Encoder Online
Encode and decode URL components
UUID Generator Online
Generate UUID v4 values in bulk
Hash Generator Online
Generate SHA-256 and SHA-512 hashes
Regex Tester Online
Test regular expressions with live match highlighting
JWT Decoder Online
Decode JWT tokens without verification
Diff Viewer Online
Compare two text blocks side by side
Timestamp Converter Online
Convert Unix timestamps to human-readable dates and back
YAML to JSON Converter Online
Convert YAML to JSON and JSON to YAML instantly
Prompt Formatter Online
Format prompts into OpenAI, Anthropic, and Gemini message structures
ENV File Parser Online
Parse .env files into a clean table, JSON, or export format
JSON Schema Validator Online
Validate JSON against a JSON Schema with detailed error messages
JSON Schema Generator Online
Generate JSON Schema from example JSON instantly
Token Counter Online
Count tokens for GPT-4, Claude, and Gemini models instantly
CSV to JSON Converter Online
Convert CSV data to JSON — paste, upload, or download
Number Base Converter Online
Convert numbers between binary, octal, decimal, and hexadecimal
File Size Converter Online
Convert between B, KB, MB, GB, TB (SI) and KiB, MiB, GiB, TiB (IEC binary)
Milliseconds to Seconds Converter Online
Convert between ms, seconds, minutes, hours, days, weeks, months, and years