En este manual aprenderemos a cambiar los permisos de cualquier archivo en un sistema operativo GNU/Linux a través de la línea de comandos.
Antes de empezar con el tutorial, ¿no tienes un servidor Cloud con Linux? ¡No te preocupes! Con solo un clic, puedes desplegarlo fácilmente con SW Hosting.
cta:cloud_so
Sin embargo, antes de mencionar cualquier tipo de comando, deberemos aprender acerca del funcionamiento del sistema de permisos en sistemas operativos GNU / Linux. Te lo mostraremos a continuación:
En concreto existen tres tipos de permisos que un archivo o directorio en linux puede tener asignado:
Los tres tipos de permisos que hemos mencionado anteriormente pueden ser activados o desactivados en cada archivo/directorio para cualquiera de los tres tipos de usuarios que mencionaremos a continuación:
Como ya hemos explicado en el apartado anterior, estos tres tipos de usuarios y permisos pueden ser asignados libremente.
Por ejemplo, el propietario del archivo/directorio puede tener permisos de lectura, escritura y ejecución, mientras que otros usuarios del sistema solo pueden tener permisos de lectura. Cualquier combinación de estos tres permisos y tres usuarios es factible brindando un total de 512 posibles combinaciones.
Finalmente, para asignar estos permisos utilizaremos el comando chmod
.
info Para poder cambiar los permisos de un archivo o directorio se debe ser propietario o usuario con privilegios de administración. Solo el propietario o usuarios de tipo
root
pueden cambiar los permisos de un archivo / directorio.
El comando chmod
tiene la siguiente sintaxis:
chmod [permiso a asignar o retirar] nombredearchivo
Los símbolos usados para describir un permiso son los siguientes:
r
: lecturaw
: escriturax
: ejecuciónu
: propietariog
: grupoo
: otrosa
: todos los anterioresAsí, la abreviación u+w
indicaría que se desea asignar el permiso de escritura al propietario.
o+x
(asigna el permiso de ejecución a "otros")a-x
(elimina el permiso de ejecución a todos los usuarios)g-w
(elimina el permiso de ejecución a los miembros del grupo al que pertenece el archivo)u+r
(otorga permisos de lectura al propietario)Conociendo estas abreviaturas, ahora podremos utilizar el comando chmod
de la siguiente manera:
chmod u+x nombredearchivo
Este comando otorgaría permiso de ejecución al archivo nombredearchivo
y al propietario del mismo.
Múltiples permisos pueden ser otorgados a múltiples usuarios al mismo tiempo. De este modo:
chmod ug+wrx nombredearchivo
Este comando otorgaría permisos de lectura, escritura y ejecución (permisos completos) tanto al propietario como a los miembros del grupo, al archivo nombredearchivo
.
Finalmente, cabe destacar la utilidad de la opción -R
que aplica estos permisos de forma recursiva a cualquier archivo que se encuentre dentro de un directorio. Por ejemplo:
chmod -R u+wx nombrededirectorio
Este comando aplica los permisos de escritura y ejecución para el propietario a cualquier archivo o directorio contenido dentro de nombrededirectorio
, inclusive a archivos/directorios contenidos en niveles inferiores.
info el comando
chmod
dispone de un llamadomod octal
que permite asignar permisos mediante el uso de números. Esta información estará detallada en otro manual de usuario.
Recuerda que si no dispones aun de un servidor Cloud con Linux puedes desplegarlo fácilmente con SW Hosting.
cta:cloud_so