Chmod o cómo modificar los permisos de nuestros archivos
En muchos casos, cuando queremos acceder a un archivo que nos han pasado a través de un pendrive o Internet o bien cuando queremos acceder a una carpeta de otro usuario, la distribución Gnu/Linux nos da error. Esto puede ocurrir aunque escribamos el comando correctamente, es más, a pesar de ello, el sistema nos dará el mensaje de “acceso erróneo” o “acceso denegado”.
El motivo de esto es que en Gnu/Linux tanto archivos como carpetas tienen unos permisos para poder trabajar con ellos. Estos permisos están relacionados con la modificación, eliminación y creación de ellos.
¿Qué son los permisos de los archivos?
En todas las distribuciones Gnu/Linux existen dos tipos de usuarios, principalmente, el administrador o root y el resto de usuarios. El administrador tiene acceso a todos los archivos del sistema operativo, puede tanto eliminar como crear como modificar cualquier archivo.
El resto de los usuarios solo podrán eliminar, modificar o crear sus propios archivos, los archivos que están dentro de su home. Los archivos de sistema y de otros usuarios solo podrán eliminarse, modificarse o crearse con el permiso del administrador o del usuario afectado.
¿Qué permisos podemos aplicar dentro de Gnu/Linux?
Todo archivo de Gnu/Linux tiene tres grupos de permisos, el primer grupo nos dice que puede hacer el propietario de ese archivo. El segundo grupo nos dice que permisos tienen todos los usuarios del grupo al que pertenece ese archivo y el tercer grupo indica el permiso que tienen los otros usuarios.
Estos grupos de permisos son importantes puesto que se juega con ellos y nos permite dar seguridad y funcionalidad a nuestro sistema operativo.
Así, podemos hacer que determinados archivos solo puedan ser leídos o modificados por nosotros mismos, podemos hacer que una carpeta esté administrada por un grupo de usuarios que pertenecen a un departamento o podemos hacer que determinados archivos sean administrados por todos y estos estén dentro de una red amplia permitiendo la personalización de todos los sistemas operativos compartiendo varios archivos.
A cada uno de estos tres grupos podemos aplicar o indicar las siguientes variables que dicen al sistema operativo si se puede modificar, eliminar o escribir. Las variables son:
-
- R: Si aparece esta letra nos indica que el archivo se puede leer.
- W: Si aparece esta letra, nos indica que puede escribirse o modificarse.
- X: Si aparece esta letra, nos indica que se puede ejecutar
Cuando las variables son números
Las anteriores letras o variables se pueden cambiar por números del 0 al 7. Así, el número 0 indica que no se tiene ningún permiso sobre ese archivo y el 7 indica que tenemos todos los permisos de ese archivo. La relación de los números restantes con su significado es la siguiente:
# Permisos
7 Todos los permisos.
6 Lectura y escritura
5 Lectura y ejecución
4 Solo lectura
3 Escritura y ejecución
2 Solo escritura
1 Solo ejecución
0 Ningún permiso
Ahora que ya conocemos las variables para aplicar a los archivos y que significa cada tipo de archivo, vamos a aplicarlo en nuestros archivos y en nuestra distribución Gnu/Linux.
Modo consola
El poder aplicar un determinado permiso a un archivo o carpeta a través de la terminal o consola es muy fácil. Personalmente prefiero utilizar este método antes que el método gráfico pero los dos métodos funcionan perfectamente.
Para aplicar o modificar permisos hemos de utilizar el comando “chmod”. Si somos propietarios de ese archivo basta con utilizar el comando chmod. Si no somos propietarios entonces hemos de utilizar antes el comando “sudo”.
Tras invocar el comando chmod hemos de indicar la letra o el número a aplicar y el archivo o carpeta al que queremos aplicar los cambios en sus permisos. Entre el comando chmod y la variable utilizaremos el signo “+” si queremos añadir esos permisos o el signo “-” si queremos quitárselos.
Para la visualización de los permisos de los archivos hemos de utilizar el comando “ls -l”. Tras ejecutarlo aparecerá un listado de archivos con una serie de letras como las siguientes:
drwxr-xr-x
La primera letra nos indica si es un archivo (-), un directorio ( d), un archivo especial de bloque (b) o un archivo especial de tipo carácter (c). Las siguientes tres letras nos hablan de los permisos del propietario, las otras tres letras nos habla de los permisos del Grupo y el resto de las letras nos hablan de los permisos de otros usuarios. En caso de haber un “-” significa que no tiene ese permiso. Es decir, si solo tiene “r-x” significa que tiene permiso de lectura y de ejecución pero no tiene permiso de escritura.
Modo gráfico
Para realizar la modificación de los permisos de los archivos de forma gráfica, primero hemos de ir a nuestro gestor de archivos. Dentro del gestor de archivos hemos de seleccionar el archivo que queremos modificar sus permisos y hacemos click con el botón derecho del ratón. Dentro del menú que nos aparezca seleccionamos la opción Propiedades. Entonces aparecerá una ventana como la siguiente:
Dentro de esta ventana nos vamos a la pestaña “Permisos” y veremos todos los tipos de permisos que tiene el archivo. Gracias a los desplegables podemos modificar las opciones y hacer que los otros tengan acceso a “lectura y escritura” o ninguno. Además, al final, aparece la opción de “permitir ejecutar el archivo como un programa”. Al marcarlo estaremos haciendo que el escritorio reconozca el archivo como si fuera un archivo ejecutable. Tras dejar los cambios que queremos hacer, pulsamos el botón cerrar y se aplicarán los cambios realizados.
Puede ser que queramos cambiar los permisos de un archivo de otro usuario o archivos que pertenecen al administrador. En este caso hemos de ejecutar el gestor de archivos como administrador.
Para ello abrimos la terminal y escribimos:
sudo “nombre del gestor de archivos”
Se abrirá una ventana con el gestor de archivos que nos permitirá realizar cualquier cambio a los permisos de los archivos. Este cambio se podrá hacer de la forma anterior ya que aplicaremos los cambios como administrador y no como usuario.
¿problemas con los permisos?
Hay que recordar que estos cambios que realizamos en los permisos de los archivos se hacen desde el punto de vista del usuario. Es decir, nuestra distribución entiende que esos permisos los tiene el usuario que realiza los cambios pero no el resto de usuarios. Si tenemos más usuarios, esos permisos no se aplicarán a esos usuarios al menos que lo indiquemos.
Es importante conocerlo y además se puede aplicar a todas las distribuciones Gnu/Linux, da igual el nombre de la distribución. Aplicar cambios y permisos a los archivos en Gnu/Linux es muy fácil y también muy importante ya que parte de la seguridad de nuestro sistema operativo se basa en eso.
El artículo Chmod o cómo modificar los permisos de nuestros archivos ha sido originalmente publicado en Linux Adictos.