El sistema de archivos Linux es sin duda uno de los mejores ya que cuenta con permisos totalmente personalizable, pero esto no nos sirve de nada si no sabemos utilizarlos correctamente.

Lo bueno del comando chmod es que te funcionará en cualquier sistema operativo basado en UNIX, por lo que para todas las distribuciones de linux será igual.

En este tutorial explicaremos como dar permisos y como saber cual dar en cada caso.

La sintaxis básica del comando chmod es:

chmod XXX carpeta/nombrefichero

XXX es el número de permisos que le daremos al archivo o carpeta

Chmod tiene muchos más parámetros, si quieres aprender más sobre ellos teclea en la terminal:

man chmod
Relación de los permisos con los números:
0 = Ningún permiso (Lectura = 0 + Escritura = 0 + Ejecución = 0)
1 = Permiso de Ejecución (Lectura = 0 + Escritura = 0 + Ejecución = 1)
2 = Permiso de Escritura (Lectura = 0 + Escritura = 2 + Ejecución = 0)
3 = Permiso de Escritura y Ejecución (Lectura = 0, Escritura = 2, Ejecución = 1)
4 = Permiso de Lectura (Lectura = 4 + Escritura = 0 + Ejecución = 0)
5 = Permiso de Lectura y Ejecución (Lectura = 4 + Escritura = 0 + Ejecución = 1)
6 = Permiso de Lectura y Escritura (Lectura = 4 + Escritura = 2 + Ejecución = 0)
7 = Permiso de Lectura, Escritura y Ejecución (Lectura = 4 + Escritura = 2 + Ejecución = 1)
X                                    X                                    X
Propietario                         Grupo                             Otros
Por ejemplo, si quiero hacer que el archivo prueba el propietario pueda leerlo, ejecutarlo y mofificarlo. El grupo que solamente pueda leerlo y ejecutarlo. Y otros solamente puedan leerlo, le daré los permisos 754
Esto significa:
Propietario: 7 = Permiso de Lectura, Escritura y Ejecución (Lectura = 4 + Escritura = 2 + Ejecución = 1)
Grupo: 5 = Permiso de Lectura y Ejecución (Lectura = 4 + Escritura = 0 + Ejecución = 1)
Otros: 4 = Permiso de Lectura (Lectura = 4 + Escritura = 0 + Ejecución = 0)
Con eso puedes utilizar todas las combinaciones posibles en linux, pero estos números tienen una explicación matemática.
r w x Valor decimal
0 0 0 0 (000 binario es 0 en decimal)
0 0 1 1 (000 binario es 1 en decimal)
0 1 0 2 (000 binario es 2 en decimal)
0 1 1 3 (000 binario es 3 en decimal)
1 0 0 4 (100 binario es 4 en decimal)
1 0 1 5 (000 binario es 5 en decimal)
1 1 0 6 (000 binario es 6 en decimal)
1 1 1 7 (111 binario es 7 en decimal)

Para ver los permisos que tiene asignado un archivo o carpeta se visualiza con el comando ls y el parametro -la

ls -la

Fuente: Ubuntu Root y Wikipedia