Está en la página 1de 6

13/09/13

Permisos - doc.ubuntu-es

Permisos
De doc.ubuntu-es

Contenido
1 Chmod con letras 2 Chmod con Nmeros 3 Chmod con sudo 4 Cambio de permisos de forma recursiva 4.1 Chmod en modo recursivo con -R y sudo 4.2 Chmod recursivo usando find, tubera y sudo 5 Atencin con chmod en modo recursivo 6 Cambiando el archivo de Propietario y de Grupo 7 Para ms informacin 8 Ver tambin 9 Fuentes

Chmod con letras


Para brindar algo de privacidad y proteccin cada archivo o directorio tiene asociados permisos diferentes para el propietario, para el grupo y para los dems usuarios. En el caso de archivos los permisos que pueden darse o quitarse son: (r) lectura, (w) escritura y (x) ejecucin. En el caso de directorios los permisos son: (r) para listar los archivos, (w) para escribir, crear o borrar archivos y (x) para acceder a archivos del directorio. [1]. Desde un administrador de archivos, puede ver los permisos de un archivo con el botn derecho del mouse cuando el puntero est sobre el archivo, escogiendo la opcin apropiada del men que aparece. Desde un intrprete de comandos puede emplear el comando ls con la opcin -l. Un ejemplo del resultado de este comando se presenta a continuacin:
d r w x r x r x r w r l r w x r w x r w x 5j u a n 1j u a n 1j u a n u s e r s u s e r s u s e r s 4 0 9 6F e b2 10 6 : 3 1t e x t o s 6 2 5 6 1M a y1 31 8 : 1 3e v . t a r . g z 1 2N o v1 2 2 0 0 0a>/ e t c / h o s t s

La primera lnea presenta un directorio (la d al principio de la lnea lo indica), la segunda presenta un archivo (el guin inicial lo indica) y la tercera un enlace. El nombre del directorio es textos tiene 5 archivos, fue modificado por ltima vez el 21 de Febrero del ao en curso a las 6:31AM, el propietario es juan, el grupo es users y el tamao es 4096 bytes. En realidad el tamao cobra sentido slo en el caso de archivos como ev.tar.gz cuyo tamao es 62561 bytes. Los tres caracteres rwx que siguen a la d inicial indican los permisos para el propietario, los tres siguientes r-x indican los permisos para el grupo y los tres siguientes r-x indican los permisos para el resto de usuarios. Como el orden de estos permisos es siempre el mismo (primero lectura r, despus escritura w y despus ejecucin x), resulta que el archivo ev.tar.gz no es ejecutable, que puede ser ledo por el propietario y el grupo pero no por los dems usuarios, adems puede ser escrito slo por juan. Del enlace podemos destacar que se llama a, que enlaza al archivo /etc/hosts y que su tamao y permisos reales los heredar de /etc/hosts.
doc.ubuntu-es.org/Permisos 1/6

13/09/13

Permisos - doc.ubuntu-es

Los permisos de un archivo pueden ser modificados por el propietario o por el administrador del sistema con el comando chmod que espera dos parmetros: cambio por realizar al permiso y nombre del archivo por cambiar. Los permisos se pueden especificar en octal o con una o ms letras para identificar al usuario (u para el usuario, g para el grupo, o para los dems usuarios y a para todos), un +, un - o un = y despus letras para identificar los permisos (r, w o x). Por ejemplo:
c h m o do g + xs u b e . s h

Da a los dems usuarios y al grupo permiso de ejecucin del archivo sube.sh que debe estar en el directorio desde el cual se da el comando.
c h m o da wd e u . t x t

Quita el permiso de escritura en el archivo deu.txt tanto al propietario, como al grupo, como a los dems usuarios. Este mismo resultado puede obtenerse con el comando chmod -w deu.txt. Cuando no se especifican usuarios chmod toma por defecto todos los usuarios.
c h m o du = r x w , g = r x , o =t e x t o s

Cambia permisos del archivo (o directorio) textos, el usuario puede leer, ejecutar y escribir, el grupo puede leer y ejecutar mientras que los dems usuarios no tienen permisos. El propietario de un archivo puede ser modificado slo por el administrador del sistema con el programa chown. Un usuario que pertenezca a varios grupos puede cambiar el grupo de uno de sus archivos a alguno de los grupos a los que perteneza con el program chgrp, por ejemplo
c h g r pe s t u d i a n t e st a r e a 1 . t x t

Cambiar el grupo del archivo tarea1.txt a estudiantes. Los grupos a los cuales un usuario pertenece son mostrados por el programa groups.

Chmod con Nmeros


U s o :c h m o d{ o p c i o n e s }{ n o m b r ed ea r c h i v o }

Opciones Definicin #--#--# 1 2 4 Propietario Grupo Otros ejecutar escribir leer

Propietario, Grupo y Otros est representado por tres nmeros. Para obtener el valor de las opciones para determinar el tipo de acceso necesarios para el archivo hay que agregarlos a continuacin.
doc.ubuntu-es.org/Permisos 2/6

13/09/13

Permisos - doc.ubuntu-es

Por ejemplo si deseas que un archivo tenga estos permisos -rw-rw-rwx debes hacer lo siguiente: Propietario 4 +2 = 6 Grupo 4 +2 = 6 Otros 4 +2 +1 = 7

Leer y escribir leer y escribir leer, escribir y ejecutar

U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$c h m o d6 6 7a r c h i v o

Otro ejemplo, si quieres que un archivo tenga estos permisos: --w-r-x--x debes utilizar lo siguiente: Propietario Escribir 2 Grupo Otros

leer y ejecutar ejecutar 4 +1 = 5 1

U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$c h m o d2 5 1a r c h i v o

Aqu hay algunos ejemplos de uso de chmod (prueba en tu sistema). Primero creamos algunos archivos vacos:
U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$t o u c ha r c h i v o 1a r c h i v o 2a r c h i v o 3a r c h i v o 4 U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$l sl T o t a ld e0 r w r r -1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 1 r w r r -1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 2 r w r r -1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 3 r w r r -1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 4

Aadimos permiso de ejecucin al propietario


U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$c h m o d7 4 4a r c h i v o 1 U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$l sla r c h i v o 1 r w x r r -1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 1

Aadimos a Otros permiso de escritura y ejecucin


U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$c h m o d6 4 7a r c h i v o 2 U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$l sla r c h i v o 2 r w r r w x 1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 2

Eliminamos permiso de lectura al grupo:


U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$c h m o d6 0 4a r c h i v o 3 U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$l sla r c h i v o 3 r w r - -1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 3

Aadimos permiso de lectura, escritura y ejecucin a todo el mundo:


U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$c h m o d7 7 7f i l e 4 U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$l slf i l e 4
doc.ubuntu-es.org/Permisos 3/6

13/09/13

Permisos - doc.ubuntu-es

r w x r w x r w x1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3f i l e 4 U s u a r i o@a n f i t r i n :/h o m e/u s u a r i o$

Chmod con sudo


utilizamos sudo cuando queremos cambiar los permisos de un archivo del que no somos propietarios (tened cuidado en esta situacin pues cualquier metedura de pata puede afectar a partes importantes del sistema)
u s u a r i o @ h o s t : / h o m e / u s u a r i o $l sl/ u s r / l o c a l / b i n / a r c h i v o r w r r - 1r o o tr o o t5 5 02 0 0 5 1 1 1 31 9 : 4 5/ u s r / l o c a l / b i n / a r c h i v o u s u a r i o @ h o s t : / h o m e /u s u a r i o $

u s u a r i o @ h o s t : / h o m e /u s u a r i o $s u d oc h m o do + x/ u s r / l o c a l / b i n / a r c h i v o

u s u a r i o @ h o s t : / h o m e /u s u a r i o $l sl/ u s r / l o c a l / b i n / a r c h i v o r w r r x 1r o o tr o o t5 5 02 0 0 5 1 1 1 31 9 : 4 5/ u s r / l o c a l / b i n / a r c h i v o u s u a r i o @ h o s t : / h o m e /u s u a r i o $

Cambio de permisos de forma recursiva


Sirve para cambiar permisos de mltiples archivos y directorios con un solo comando. Ten cuidado con el modo recursivo y con el comando sudo

Chmod en modo recursivo con -R y sudo


Para cambiar todos los permisos de cada archivo o carpeta bajo un directorio especfico de una vez, usa chmod con -R
u s u a r i o @ h o s t : / h o m e / u s u a r i o $s u d oc h m o d7 7 7R/ p a t h / t o / d i r e c t o r i o u s u a r i o @ h o s t : / h o m e / u s u a r i o $l sl t o t a l3 r w x r w x r w x 1 u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 1 d r w x r w x r w x 2u s u a r i ou s u a r i o4 0 9 6N o v1 92 0 : 1 3c a r p e t a r w x r w x r w x 1u s u a r i o u s u a r i o0N o v1 92 0 : 1 3a r c h i v o 2

Chmod recursivo usando find, tubera y sudo


Para asignar permisos con razonable seguridad a archivos y carpetas/directorios, es corriente dar permisos 644 a archivos y 755 a directorios, as chmod -R los asigna a ambos. Usa el comando find y una tubera a chmod como en el siguiente ejemplo Para cambiar permiso slo a archivos bajo un directorio especfico
u s u a r i o @ h o s t : / h o m e / u s u a r i o $f i n d/ p a t h / t o / d i r e c t o r i ot y p ef|w h i l er e a dv a r 1 ;d os u d oc h m o d6 4 4 u s u a r i o @ h o s t : / h o m e / u s u a r i o $l sl t o t a l3 r w r r - 1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 1 d r w x r w x r w x 2u s u a r i ou s u a r i o4 0 9 6N o v1 92 0 : 1 3c a r p e t a r w r r - 1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 2

doc.ubuntu-es.org/Permisos

4/6

13/09/13

Permisos - doc.ubuntu-es

Para cambiar slo los permisos de directorios bajo un directorio especfico (incluyendo ese directorio):
u s u a r i o @ h o s t : / h o m e / u s u a r i o $f i n d/ p a t h / t o / d i r e c t o r i ot y p ed|w h i l er e a dv a r 1 ;d os u d oc h m o d7 5 5 u s u a r i o @ h o s t : / h o m e / u s u a r i o $l sl t o t a l3 r w r r - 1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 1 d r w x r r - 2u s u a r i ou s u a r i o4 0 9 6N o v1 92 0 : 1 3c a r p e t a r w r r - 1u s u a r i ou s u a r i o0N o v1 92 0 : 1 3a r c h i v o 2

Si accidentalmente cambias los permisos y este comando no funciona porque find no tiene permiso para leer el directorio especfico, pon sudo antes de find

Atencin con chmod en modo recursivo


ADVERTENCIA: Aunque ya ha sido dicho, es bueno mencionar en un contexto de terminal, lo siguiente

El borrado recursivo o los cambios de propietario de un archivo son extremadamente peligrosos. No sers ni el primero ni el ltimo que aade un espacio de ms en un comando. Este ejemplo arruinara tu sistema:
u s u a r i o @ h o s t : / h o m e / u s u a r i o $s u d oc h m o dR/h o m e / j o h n / D e s k t o p / a r c h i v o s _ t e m p o r a l e s

Nota el espacio entre el primer / y home. Has sido advertido.

Cambiando el archivo de Propietario y de Grupo


El propietario de un archivo puede ser modificado con el comando chown. Por ejemplo, para cambiar el propietario del archivo foobar a tux:
u s u a r i o @ h o s t : / h o m e / u s u a r i o $s u d oc h o w nt u xf o o b a r

Para cambiar el grupo del archivo foobar a penguin se puede usar indistintamente chgrp o chown con diferente sintaxis:
u s u a r i o r @ h o s t : / h o m e / u s u a r i o r $s u d oc h g r pp e n g u i n sf o o b a r u s u a r i o @ h o s t : / h o m e / u s u a r i o $s u d oc h o w n: p e n g u i n sf o o b a r

Finalmente, para cambiar el propietario del archivo foobar a tux y el grupo a penguins con un solo comando, la sintaxis sera:
u s u a r i o @ h o s t : / h o m e / u s u a r i o r $s u d oc h o w nt u x : p e n g u i n sf o o b a r

doc.ubuntu-es.org/Permisos

5/6

13/09/13

Permisos - doc.ubuntu-es

Nota que, por defecto, debes usar sudo para cambiar un archivo de propietario o de grupo

Para ms informacin
man chmod man chown man chgrp

Ver tambin
Video Tutorial sobre el sistema de ficheros

Fuentes
http://structio.sourceforge.net/guias/AA_Linux_colegio/ https://help.ubuntu.com/community/FilePermissions#preview Obtenido de http://doc.ubuntu-es.org/index.php?title=Permisos&oldid=15423 Categoras: Usuarios, grupos y permisos Completar

doc.ubuntu-es.org/Permisos

6/6