๐Ÿ” Unix Permissions Calculator

chmod octal & symbolic โ€” visual checkboxes, presets, instant conversion

Owner (u)
Group (g)
Other (o)
r
w
x
r
w
x
r
w
x
File
Dir

Common Presets

Permission Bits Reference

OctalBinaryrwxMeaning
7111rwxRead, write, execute
6110rw-Read and write
5101r-xRead and execute
4100r--Read only
3011-wxWrite and execute
2010-w-Write only
1001--xExecute only
0000---No permissions

What is Unix File Permissions Calculator?

Unix File Permissions Calculator converts between symbolic notation (rwxr-xr--), octal notation (755), and descriptive explanations for Unix/Linux file permissions. Enter permissions in any format โ€” click the checkboxes, type an octal number, or paste symbolic notation โ€” and see all representations plus a plain-English description of what each permission allows.

Unix file permissions control who can read, write, and execute a file. Three groups of permissions apply: owner (user), group, and others (everyone else). Each group has three bits: read (r, value 4), write (w, value 2), and execute (x, value 1). Octal permissions are the sum of these values: 7 = rwx (4+2+1), 5 = r-x (4+1), 4 = r-- (4). The permission 755 means: owner can read/write/execute, group and others can read/execute.

Understanding permissions is essential for Linux system administration, web server configuration, and development. A web server needs files to be readable by the www-data or nginx user. Private key files (.pem) must be 600 (owner read/write only) or SSH refuses to use them. Scripts must have execute permission (chmod +x script.sh) to run directly. Directories need execute permission to be entered (cd).

How to Use

  1. Click the checkboxes in the Owner, Group, and Others columns to set permissions visually.
  2. Or type an octal value (e.g., 755, 644, 600) in the octal input field.
  3. Or paste symbolic notation (e.g., rwxr-xr--) in the symbolic field.
  4. Read the plain-English description to verify the permission does what you intend.
  5. Copy the chmod command from the output (e.g., chmod 755 file.sh) for direct use.

Examples

755 (rwxr-xr-x)

Result: Owner: read, write, execute / Group: read, execute / Others: read, execute โ€” standard for executables and directories

644 (rw-r--r--)

Result: Owner: read, write / Group: read / Others: read โ€” standard for regular files (web content, configs)

600 (rw-------)

Result: Owner: read, write / Group: none / Others: none โ€” required for SSH private keys (.pem files) and sensitive configs

Frequently Asked Questions

What does the execute bit mean for a directory?

For a directory, the execute bit means 'can enter this directory' (cd into it). Without execute permission, you cannot list its contents even if you have read permission, because read on a directory only allows you to see filenames, not access them. Standard directory permissions are 755 (owner full, others read and traverse).

What is setuid/setgid/sticky bit?

These are special permission bits shown as a 4th octal digit. setuid (4000): when set on an executable, it runs as the file's owner (not the caller) โ€” used by sudo and passwd. setgid (2000): on executables, run as the file's group; on directories, new files inherit the directory's group. Sticky bit (1000): on directories, only the file's owner can delete it โ€” used on /tmp.

How do I recursively change permissions?

Use chmod -R [permissions] [directory]. For example: chmod -R 755 /var/www/html sets all files and directories to 755. Warning: this applies the same permissions to both files and directories, which may not be what you want. A better approach: find /var/www/html -type d -exec chmod 755 {} + for directories and find /var/www/html -type f -exec chmod 644 {} + for files.

What permissions should a web server directory have?

Web server files: 644 (owner rw, group and others r). Web server directories: 755. Scripts that must run: 755. Private keys and credentials: 600 or 400. The web server user (www-data, nginx, apache) must be able to read files โ€” usually by belonging to the file's group or via world-readable permissions.

What is umask?

umask is a mask subtracted from the default permissions when files are created. Default file permissions are 666 (rw-rw-rw-); default directory permissions are 777 (rwxrwxrwx). A umask of 022 subtracts write from group and others: files get 644, directories get 755. Check your current umask with the umask command; change it for the session with umask 027.

Related Tools