Etiquetas

jueves, 7 de julio de 2011

Como usar "chmod" para cambiar permisos

chmod es un comando para cambiar los permisos de un archivo o una carpeta en Linux. Para entender esto,primero para ver los permisos que se tiene sobre un archivo podemos escribir:
ls -l "nombre del archivo"
Entonces aparecerá algo como esto "-rwxrw-rw-" seguido del creador del archivo y otros datos que no nos interesan.

Para explicar fácilmente lo que significa cada letra o guión los vamos a dividir en grupos de 3 (tres bits) de esta forma: "- --- --- ---"

El guión que queda separado de los demás indica que es una carpeta y es reemplazado por la letra d

Los demás son:
  • r: leer archivo/carpeta (read)
  • w: escribir en el archivo/carpeta (write)
  • x: ejecutar archivo/carpeta
También indican a quien le esta dando tales permisos:
  • El primer grupo de izquierda a derecha indica los permisos del dueño.
  • El de en medio muestra los permisos del grupo al que pertenece el archivo.
  • El del final indica los permisos a todos los demás usuarios.
Entonces una vez que entendemos esto explicare las 2 formas para cambiar los permisos:
La primera es la mas fácil, pero no permite mucha flexibilidad en la asignación de permisos. Para esto escribimos:
chmod +x nombredelarchivo
Para agregar permiso de ejecutar el archivo a todos los usuarios. La "x" la podemos sustituir por "r" ó "w" para cambiar los permisos de leer y escribir respectivamente. Y si lo que queremos es quitar un permiso en lugar de "+" escribimos un "-".


Para el segundo método consideraremos cada guión como un bit. De esta forma con cada grupo de 3 bits el numero máximo que podemos representar es el 7. Para los que no entienden de que hablo aquí les dejo una tabla:

r
wxNumero decimal
0000
0011
0102
0113
1004
1015
1106
1117


Los 1's indican que esta activado un permiso y los 0's indican que esta descantivado.

Entonces para cambiar los permisos usando estos números lo escribimos de la siguiente manera:
 chmod  755 archivo

Esto cambiara los permisos del archivo a rwxrw-rw- lo que significa que el dueño del archivo tiene control total sobre el, pero los demás solo pueden leerlo y cambiarlo. Como pueden ver esos valores corresponden con los de la tabla.

No hay comentarios:

Publicar un comentario