Cómo cambiar permisos y propietarios en Linux
En este tutorial, aprenderás a cambiar permisos y propietarios en Linux usando los comandos de Linux chmod y chown. Al hacerlo, conseguirás una mejor gestión en los proyectos en equipo.
Tabla de Contenidos
Por qué es necesario cambiar los permisos y los propietarios en Linux
Linux es un sistema operativo multiusuario, por lo que más de una persona puede trabajar en el mismo ordenador al mismo tiempo. Además, es posible acceder al sistema de forma local o remota. Por eso los desarrolladores suelen utilizar este sistema operativo para proyectos en grupo.
En un entorno tan amplio, debemos establecer los permisos y la propiedad de los archivos, de modo que sólo determinados usuarios puedan acceder a nuestros datos. De esta manera, protegeremos la información sensible y evitaremos que se produzcan cambios no deseados.
Afortunadamente, gracias a los comandos chmod y chown, es fácil cambiar los permisos y los propietarios en Linux. Pero antes de empezar a aprender a utilizarlos, asegúrate de que tienes acceso a la línea de comandos. Puedes iniciar la terminal pulsando Ctrl + Alt + T.
Cambiar permisos de archivos y carpetas
Usaremos el comando chmod para cambiar los permisos de un archivo o carpeta en Linux. Pero primero, debes saber que hay tres tipos de usuarios que pueden interactuar con un archivo:
Tipo | Explicación |
owner (propietario) | Es el usuario que creó y posee un archivo/directorio. |
group (grupo) | Todos los usuarios que son miembros del mismo grupo. |
others (otros) | Todos los demás usuarios del sistema que no son propietarios ni miembros del grupo. |
Para ver los permisos y propietarios de un archivo específico, puedes ejecutar este comando:
ls -l [nombre del archivo]
El resultado mostraría algo así:
-rwxr–rw- 1 usuario usuario 0 Jan 19 12:59 miarchivo.txt
Desglosemos el resultado para ver qué significa cada campo:
- ‘-rwxr-rw-‘ – Esta parte de la línea representa los permisos del archivo. Para entenderlo mejor, tenemos que dividirlo en cuatro grupos: (–), (rwx), (rw-) y (rw-).
– El primer grupo indica el tipo de archivo. Nuestro ejemplo muestra un guión, que representa un archivo normal. Si estamos inspeccionando un directorio, el guión será sustituido por la d.
– Los tres caracteres después del tipo de archivo representan los permisos del propietario. En este ejemplo, podemos ver que el propietario puede leer (r), escribir (w) y ejecutar (x) el archivo.
– Los siguientes tres caracteres son los permisos del grupo. Podemos concluir que el grupo puede leer (r) y escribir (w), pero no puede ejecutar el archivo. Esto se debe a que el último carácter es un guión en lugar de la letra x.
– El último grupo es el de los permisos del resto de usuarios. Basándonos en nuestro ejemplo, este tipo de usuario no puede ejecutar el archivo, pero se le permite leer y escribir. - 1 – Es la cantidad de enlaces fijos (hard links). Un enlace fijo es un nombre adicional para un archivo existente.
- usuario usuario – El propietario y el grupo propietario del archivo.
- 0 – El tamaño del archivo en bytes.
- Jan 19 12:59 – La fecha de la última modificación.
- miarchivo.txt – El nombre del archivo/carpeta.
Cómo usar el comando chmod
Digamos que queremos cambiar los permisos de los archivos de Linux de -rwxrw-rw- a -rwx-r-r-. Simplemente introduce esta línea:
chmod 744 [nombre del archivo]
Al ejecutar este comando, el propietario puede leer, escribir y ejecutar el archivo (rwx). Sin embargo, el grupo y otros sólo pueden leer (r-).
Llegados a este punto, puede que te preguntes por qué utilizamos un número de tres dígitos (744) después del comando chmod.
Este número determina los permisos del archivo. Leer, escribir y ejecutar están representados por un valor numérico:
- r (read) – 4
- w (write) – 2
- x (execute) – 1
Así que si quieres dar todos los permisos (rwx) a un usuario, tenemos que añadir leer (4), escribir (2) y ejecutar (1). Por lo tanto, rwx es igual a 7.
Mientras tanto, como el grupo y otros sólo pueden leer el archivo, les asignamos 4.
Recuerda que los permisos del propietario siempre van primero, seguidos por los del grupo y otros. Por eso introducimos 744.
Consejo profesional
Si no quieres dar ningún permiso a un usuario, introduce 0 en el lugar correspondiente.
Aquí hay una lista de los permisos más comunes para los archivos:
Valor | Valor Numérico | Explicación |
-rw——- | 600 | El propietario puede leer y escribir. |
-rw-r–r– | 644 | El propietario puede leer y escribir, el grupo y otros pueden leer. |
-rw-rw-rw- | 666 | El propietario, el grupo y otros pueden leer y escribir. |
-rwx—— | 700 | El propietario puede leer, escribir y ejecutar, el grupo y otros no pueden hacer nada con el archivo. |
-rwx–x–x | 711 | El propietario puede leer, escribir y ejecutar, el grupo y otros pueden ejecutar. |
-rwxr-xr-x | 755 | El propietario puede leer, escribir y ejecutar, el grupo y otros pueden leer y ejecutar. |
-rwxrwxrwx | 777 | EL propietario, el grupo y otros pueden leer, escribir y ejecutar. |
Permisos comunes para directorios:
Valor | Valor Numérico | Explicación |
drwx—— | 700 | Solo el propietario puede leer y escribir en este directorio. |
drwxr-xr-x | 755 | El propietario, el grupo y otros pueden leer el directorio, pero solo el propietario puede cambiar su contenido. |
Cambiar los propietarios de archivos y carpetas
Para cambiar el propietario de un archivo y una carpeta en Linux, utilizaremos el comando chown. Esta es la sintaxis básica:
chown [propietario/grupo propietario] [nombre del archivo]
Digamos que tenemos un archivo llamado “miarchivo.txt“. Si queremos que el propietario del archivo sea “hostinger“, podemos utilizar este comando:
chown hostinger miarchivo.txt
Sin embargo, si queremos cambiar el grupo propietario del archivo a “clientes“, introduciremos esta línea en su lugar:
chown :clientes miarchivo.txt
Observa que usamos dos puntos (:) antes de “clientes” para indicar que se trata de un grupo propietario.
Ahora, para cambiar el propietario y el grupo al mismo tiempo, la sintaxis sería así:
chown hostinger:clientes miarchivo.txt
La regla principal es que el propietario debe ir antes del grupo propietario y tienen que estar separados por dos puntos.
Usar opciones con los comandos chmod y chown
Una opción es un comando adicional para modificar la respuesta de un comando.
Una de las opciones más populares que puedes combinar con chmod y chown es -R (recursivo). Esta opción te permite cambiar los permisos o propietarios de todos los archivos y subdirectorios dentro de un directorio específico.
Si quieres utilizar una opción, tienes que colocarla justo después del comando chmod/chown.
Mira este ejemplo:
chown -R 755 /etc/misarchivos
Después de introducir el comando anterior, el propietario puede leer, escribir y ejecutar todos los archivos y subdirectorios dentro del directorio /etc/misarchivos. El comando también da permisos de lectura y ejecución al grupo y a otros.
¡Importante! Ten especial cuidado con esta opción. El uso incorrecto del comando puede causar un fallo grave, y requerirá mucho trabajo revertir los cambios
Además de -R, las siguientes opciones se utilizan a menudo con los comandos chmod y chown:
- -f o force. La línea de comandos ignorará cualquier error y aplicará los comandos chmod y chown.
- La opción -v (verbose) te da un diagnóstico de todos los archivos que son procesados por el comando.
- -c (changes) es imilar a -v, pero solo proporcionará información en caso de que los cambios se hayan realizado correctamente.
Conclusión
En este tutorial, has aprendido cómo usar los comandos chmod y chown para cambiar los permisos y los propietarios en Linux. También hemos proporcionado la sintaxis básica y varias opciones útiles que puedes combinar con cualquiera de estos comandos.
Si tienes alguna pregunta, ¡no dudes en comentar abajo!
Aprende más comandos de Linux para gestionar archivos
Cómo eliminar archivos y directorios
Cómo crear un archivo vacío
Cómo localizar un archivo
Cómo comprimir un archivo con el comando Tar
Cómo cambiar la propiedad de un archivo con el comando Chown
Cómo descomprimir archivos en Linux
Cómo renombrar un archivo
Cómo crear un enlace simbólico