Entendiendo permisos de ficheros y derechos de acceso en Linux

Hola a todos, regreso de nuevo a las actividades blogueras con la traducción de artículos muy
buenos a mi juicio que solo he visto en la lengua anglosajona. Espero disfruten…

En linux todo es un fichero. Para establecer derechos de acceso en en ficheros específicos
usaremos el comando chmod. Para ver cuales son los derechos de acceso de un fichero específico
usaremos el comando ls -l. Antes aprenderemos cómo ver y cambiar los permisos de un fichero.

Nota: Para cambiar los permisos de un fichero debe iniciar sesión como usuario root.

Suponga que tiene un fichero llamado linuxstall.txt en un directorio llamado LinuxStall que está
en /tmp. Use el comando ls -l para ver los permisos de este:

ls -l /tmp/LinuxStall/linuxstall.txt

La salida sería algo así:

-rwxr- -r- -. 1 root root 0 Jan 5 15:39 /tmp/LinuxStall/linuxstall.txt

Primero vamos a entender lo que la línea anterior significa
descomponiendola en diferentes partes.

El bit del extremo izquierdo puede ser de dos tipos d o -
si es d significa que es un directorio
si es – significa que es un fichero

Aquí en nuestro ejemplo es – osea que es un fichero.

Parte 1: rwx (Ver derechos de acceso de propietario)
Explicación:
El primer bit es – significa que es un ficehro, si es d significa que es un directorio.
El segundo bit es r significa lectura asi que el propietario puede abrir este fichero.
El tercer bit es w significa escritura asi que el propietario puede editar este fichero.
El cuarto bit es x significa ejecutable asi que el propietario puede ejecutar este fichero.

Parte 2: r- – (Ver derechos de acceso de grupo)
Explicación:
El primer bit es r significa lectura asi que los miembros del grupo pueden abrir este fichero.
El segundo bit es – significa que los miembros del grupo no pueden editar este fichero.
El tercer bit es – significa que los miembros del grupo no pueden ejecutar este fichero.

Parte 3: r- – (Ver otros usuarios que no son propietarios, ni miembros de grupos)
Explicación:
El primer bit es r significa que otros usuarios pueden abrir este fichero.
El segundo bit es – significa que otros usuarios no pueden editar este fichero.
El tercer bit es – significa que otros usuarios no pueden ejecutar este fichero.

Cambiando permisos de ficheros usando el comando chmod

Aqui están dos métodos de cambio de permisos de un fichero usando el comando chmod:

Sintaxis: chmod permisos /ruta_al_fichero_o_directorio/

Método 1: Numérico

En este método usaremos bits numéricos que corresponden a rwx. Los valores numéricos
para estos son:

r=4, w=2, x=1

chmod 444 /tmp/LinuxStall/linuxstall.txt

Esto cambiará los permisos del fichero linuxstall.txt a

-r- -r- -r- – que significa que el propietario, grupo y otros solo pueden leer el fichero.

chmod 555 /tmp/LinuxStall/linuxstall.txt

-rx-rx-rx- que significa que el propietario, grupo y otros pueden leer y ejecutar el fichero.

chmod 666 /tmp/LinuxStall/linuxstall.txt

Esto cambiará los permisos del fichero linuxstall.txt a

-rw-rw-rw- que significa que el propietario, grupo y otros pueden leer y editar el fichero.

chmod 644 /tmp/LinuxStall/linuxstall.txt

Esto cambiará los permisos del fichero linuxstall.txt a

-rw-r- -r- – que significa que el propietario puede leer y editar el fichero, grupo y otros solo pueden leerlo.

Por lo tanto dijimos que el primer bit numérico es para el propietario, el segundo bit numérico para grupos
y el tercero es para otros usuarios. Puede utilizar los bits numéricos 1,2,4 con el propósito de ejecutar,
escribir y editar respectivamente.

Método 2: Alfabético

Estas son las 4 letras asociadas, u,g,o y a.

u significa propietario

g significa grupos

o significa otros

a significa todos

Para añadir permisos utilizamos + y para remover permisos usamos -

Ejemplo 1: Conceder permisos a todos los grupos de usuarios

chmod g+r /tmp/LinuxStall/linuxstall.txt

Ejemplo 2: Remover permiso de lectura a grupos de usuarios

chmod g-r /tmp/LinuxStall/linuxstall.txt

Ejemplo 3: Conceder lectura, escritura y ejecución al propietario

chmod u+rwx /tmp/LinuxStall/linuxstall.txt

[...]

Fuente: http://www.linuxstall.com/linux-file-permissions-chmod/ (inglés)

3 comentarios en “Entendiendo permisos de ficheros y derechos de acceso en Linux

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s