We need to use file permissions on servers, see? it’s good, hmmkay?
This page on wikipedia treats the subject in marvelous detail, but here’s a quick reference to the levels of permissions:
Quick Reference
| Octal | Symbolic | English |
|---|---|---|
| 0 | — | no permission |
| 1 | –x | execute |
| 2 | -w- | write |
| 3 | -wx | write and execute |
| 4 | r– | read |
| 5 | r-x | read and execute |
| 6 | rw- | read and write |
| 7 | rwx | read write and execute |
Commands
To query file permissions, ls -l gives you the symbolic notation.
To set file permissions, use the chmod command. ” chmod -R 755 * ” for example, sets all children of the current location to world readable and executable.
Commonly Used Permissions
OK, now, the main point of this post is to document some of the commonly used combinations. Note that in all examples below, we’re setting the last two digits the same. This is because we’re only really designing for two users: us and them. We want us to have high permissions, and only give the minimum of permissions to them.
| Octal | Symbolic | English |
|---|---|---|
| 000 | ———- | no permissions |
| 777 | -rwxrwxrwx | all permissions – careful! |
| 755 | -rwxr-xr-x | read and execute – necessary for scripts on a webserver |
| 644 | -rw-r–r– | read only – fine for non-executable static content – images and html files. |
| 666 | -rw-rw-rw- | read and write, but no execute – good for if a web page needs to modify its own configuration files, but they don’t need to be executed |
Commands
World Writable 777
chmod -R 777 *
Everyone can write. Some scripts may require these settings while installing themselves.
See Also
https://help.ubuntu.com/community/FilePermissions



