Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Chmod cheat sheet

Chmod codes cheat sheet

How to use chmod codes in UNIX:

  1. There are three types of permissions in files and folders in unix
    1. Read (r)
    2. Write (w)
    3. Execute (x)
  2. And, there is a classification of users called UGO (explained bellow):
    1. U ~> User (usually, you)
    2. G ~> Group (eg sudo group)
    3. O ~> Others

When you run $ ls -l your output will be something like this:

-rwxrwxrwx@  1 user  staff  708301983 Aug 11 13:51 all.zip
-rw-r--r--   1 user  staff          0 Aug 22 22:10 chmodCheatSheet.md
-r--------@  1 user  admin       1692 Jul  6 10:13 deploykey.pem
drwxr-xr-x   3 user  staff        102 Aug 20 19:14 deploynode

How to read this?

Where is a letter put a 1 and where is a - put a 0. Examples:

U G O
r w x r w x r w x
1 1 1 1 1 1 1 1 1

So, user, group and others can read, write and excute the file or folder

U G O
r w - r -- r - x
1 1 0 1 0 0 1 0 1

So, user can read and write, group can only read, finally other can read and execute

As you can see, we can play with these permissions

U G O
r - x r w - - - -
1 0 1 1 1 0 0 0 0
U G O
- w x r - x - - x
0 1 1 1 0 1 0 0 1

Finally, the codes! (sorry)

Bin Decimal Representation
000 0 - - -
001 1 - - x
010 2 - w -
011 3 - w x
100 4 r - -
101 5 r - x
110 6 r w -
111 7 r w x

The syntax is something like this: $ chmod u/permissions g/permissions o/permissions file[or /dir/]

  • So, if I run $ chmod 777 file <=> rwx rwx rwx everybody can do anything with file
  • Or I run $ chmod 744 dir <=> rwx r-- r--only user can read, write and execute, group and others only read dir.
  • Or run $ chmod 200 file2 <=> -w- --- ---only you can write file2

Thanks for reading, I hope it works! Follow me on Twita and GitHub

Refs:

  1. http://www.pa.msu.edu/~abdo/unixcc.html
  2. http://www.yourownlinux.com/2013/09/chmod-basics-of-filesdirectories.html

Special thanks:

@GabeKutuzov

This comment has been minimized.

Copy link

@GabeKutuzov GabeKutuzov commented Nov 18, 2020

I made some changes in my fork for spelling errors.
https://gist.github.com/GabeKutuzov/ec788f2d8456fadf7754a61a6a5ed9b0

Thank you for this gist

@juanarbol

This comment has been minimized.

Copy link
Owner Author

@juanarbol juanarbol commented Nov 23, 2020

I made some changes in my fork for spelling errors.
https://gist.github.com/GabeKutuzov/ec788f2d8456fadf7754a61a6a5ed9b0

Thank you for this gist

Thank you Gabe! I've updated the gist and added you to the credits. :)

@GabeKutuzov

This comment has been minimized.

Copy link

@GabeKutuzov GabeKutuzov commented Dec 21, 2020

I made some changes in my fork for spelling errors.
https://gist.github.com/GabeKutuzov/ec788f2d8456fadf7754a61a6a5ed9b0
Thank you for this gist

Thank you Gabe! I've updated the gist and added you to the credits. :)

Awesome! Just saw. Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment