Chmod
Editar permisos
Last updated
Editar permisos
Last updated
El comando chmod se usa para cambiar los permisos de archivos o directorios. En Linux y otros sistemas operativos como Unix, hay un conjunto de reglas para cada archivo que define quién puede acceder a ese archivo, y cómo se puede acceder a él. Estas reglas se llaman permisos de archivo o modos de archivo .
En general, los comandos chmod toman la forma:
Al comando chmod le sigue el elemento opcional options, que permite definir opciones avanzadas. El elemento mode representa el modo que se aplicará a file, que podrá ser un archivo o un directorio. El mode indica si una clase de usuario debe recibir permisos de acceso o si los permisos con los que cuenta se han de retirar.
De acuerdo con el sistema de archivos Unix, en un servidor Linux, cada archivo, como también los directorios, cuenta con permisos de acceso propios, que se regulan siempre en base a tres clases de usuarios:
Para hacer referencia a todas las clases se utiliza la letra a (all).
Linux utiliza una simbologia que asigna a cada tipo de permisos y usaurios una letrayt. En la sigueintre tabla podras observar las simoblogia para los distintos tipos de permisos:
Permisos | Descripcion |
---|---|
Una manera rápida y fácil de enumerar los permisos de un archivo es con la opción de listado largo ( -l ) del comando ls. Por ejemplo, para ver los permisos de archivo.txt , puedo usar el comando:
Utilizando unicamnete el comando ls -l se listaran todos tu archivos y directorios y sus respectivos permisos. Para mas informacion hacerca accede al aprtado de ls.
Si la definición de los derechos se hace por el modo simbólico, para vincular las clases de usuario con sus respectivos permisos se utilizan los siguientes operadores:
Si por ejemplo queremos que nuestro usuario tenga permisos de ejecion en el fichero archivo.txt tendremos que ejecutar el siguiente comando:
Con el metodo simbolico simepre que queiras agregar o quitar permisos a alguna de las clases tendras que hacerle referencia en el comando . Por ejemplo, si ahora queremos quitar los permisos de escritura al usuario y al gurpo tednriamos que ejecutar el siguiente comando:
Aunque la notación simbólica es una de las más utilizadas, su uso frecuente puede hacerla inmanejable. Por esta razón, muchos administradores recurren a la notación octal a la hora de atribuir derechos. Se trata de un número de tres cifras en el que cada posición representa una clase de usuario del servidor. La notación octal sigue siempre el mismo orden:
El metodo octal se basa en realizar combinaciones de sumas entre los 4 sigueintes numeros, para asi dar permisos a las distintas clases.
Para que quede mas claro, si aprecias el sgueinte conando podras apreciar que el usario tiene permisos de lecutara(4) y escritura(2), (4+2), el grupo solo tiene permisos lectura(4) y los otros usuarios no tienen ningun permisos(0)
Operadores | Descripcion |
---|---|
Posición de la cifra de la clase de usuario | Significado |
---|---|
Valor para derechos de acceso | Significado |
---|---|
Flags | Descripcion |
---|---|
User (u)
Por lo general, cualquier usuario que crea un archivo en un sistema Unix se define automáticamente como user de ese archivo
Group (g)
La clase grupo aúna en el servidor a varias cuentas de usuario. En sistemas de archivos tipo Unix, cada cuenta se subordina a un grupo principal de forma automática, pero también puede pertenecer a otros grupos.
Other (o)
La clase de usuario other abarca a todos los usuarios que no son propietarios de archivos ni miembros de un grupo con derechos de acceso.
r
Permiso de lectura (read)
w
Permiso de escritura (write)
x
Permiso de ejecución (execute)
+
Con el operador “+” se asignan más derechos de archivo a una clase de usuario. Solo se sobrescriben los derechos afectados.
-
El operador “-“retira derechos de acceso a una clase de usuario.
=
Si los permisos de archivo de una clase de usuario se han de renovar, sin importar qué derechos tuvo antes, se usa el operador “=”.
1
Corresponde a la clase de usuario “propietario” (user).
2
Corresponde a la clase de usuario “grupo” (group).
3
Corresponde a la clase de usuario “otros” (other).
4
Leer
2
Escrir
1
Ejecutar
0
Sin permisos
-R, -recursive
El cambio de los derechos de acceso se aplica a todos los archivos y subdirectorios dentro de una carpeta.
-v, verbose
Después del comando se emite un diagnóstico de todos los archivos procesados.
-c, changes
Después del comando se muestra un diagnóstico para todos los archivos que se han modificado.
-f, silent, -quiet:
Se silencian los mensajes de error.
-no-preserve-root:
Se usa para definir que no trate ‘ / ‘ (el directorio raíz ) de ninguna manera especial, que es la configuración predeterminada.
-preserve-root
Se usa para indicar que no opere recursivamente en ‘ / ‘.
-reference = RFILE
Indica que debe establecer los permisos para que coincidan con los del archivo RFILE, ignorando cualquier MODO especificado.