09 Permisos en Linux II

Published Apr 11, 2023

Linuxpermissions

🧠 Introducción

En la clase anterior aprendiste a cambiar el propietario y grupo de archivos.

Ahora vamos a dar un paso más: entender cómo se calculan los permisos en Linux, qué significan los números como 755, y cómo modificarlos usando chmod de forma numérica o simbólica.

Dominar esto es clave para controlar el acceso a tus archivos y carpetas, tanto en entornos de desarrollo como en producción.

1. ¿Cómo Funcionan los Permisos?

En Linux, cada archivo o carpeta tiene permisos para tres tipos de usuarios:

Tipo ¿Quién es?
u - Usuario El propietario del archivo
g - Grupo El grupo asignado al archivo
o - Otros Todos los demás usuarios

Y cada uno puede tener estos permisos:

Letra Permiso ¿Qué permite hacer?
r Read Leer el contenido
w Write Modificar contenido
x Execute Ejecutar el archivo (si es script/binario) o acceder a la carpeta

2. Permisos en Modo Numérico (Octal)

Los permisos se representan con tres números (uno por cada categoría: usuario, grupo y otros).

Cada número es la suma de valores según los permisos:

Permiso Binario Valor
r 100 4
w 010 2
x 001 1

🎯 Ejemplos comunes:

Valor Permisos Significado
7 rwx Todos los permisos
6 rw- Leer y escribir
5 r-x Leer y ejecutar
4 r-- Solo lectura
0 --- Sin permisos

🧮 Ejemplo práctico

chmod 754 archivo.txt
  • 7: Usuario → lectura, escritura y ejecución (rwx)
  • 5: Grupo → lectura y ejecución (r-x)
  • 4: Otros → solo lectura (r--)

3. Cambiar Permisos con chmod

El comando chmod (change mode) modifica los permisos.

📌 Modo numérico (más rápido y directo)

chmod 644 documento.txt
chmod 700 script.sh

📌 Modo simbólico (UGO)

Más legible y flexible:

chmod u+x archivo.sh        # Agrega ejecución al usuario
chmod g-w archivo.txt       # Quita escritura al grupo
chmod a+r archivo.log       # Agrega lectura para todos
Símbolo Significado
u Usuario (owner)
g Grupo
o Otros
a Todos (u + g + o)
+ Agregar permiso
- Quitar permiso

4. Ver los Permisos

ls -l archivo.txt

Salida ejemplo:

-rw-r--r-- 1 edu developers 1024 abr 6 14:00 archivo.txt

Se interpreta como:

  • rw- (usuario): puede leer y escribir
  • r-- (grupo): solo puede leer
  • r-- (otros): solo puede leer

5. Permisos por Defecto: umask

Cuando creas archivos o carpetas, Linux resta la umask a los permisos máximos posibles para definir los permisos por defecto.

Tipo Permiso máximo Ejemplo con umask 022
Archivo 666 (rw-rw-rw-) 644 (rw-r--r--)
Carpeta 777 (rwxrwxrwx) 755 (rwxr-xr-x)

▶️ Ver umask actual:

umask

🛠️ Cambiar umask:

umask 027

Esto dará permisos restrictivos: solo lectura/escritura para el propietario, lectura para el grupo, y ninguno para otros.

6. Práctica Recomendada

  1. Crea un archivo con touch.
  2. Usa chmod en modo numérico y simbólico.
  3. Cambia permisos de carpetas también (chmod 755 mi_carpeta/).
  4. Prueba con ls -l para verificar los cambios.
  5. Cambia temporalmente el umask y crea un nuevo archivo para ver la diferencia.

📘 Próximos Pasos

  • Aprende sobre permisos especiales: SUID, SGID, y Sticky Bit.
  • Investiga cómo los permisos afectan a scripts o servidores web.
  • Consulta los manuales con man chmod y man umask.

🧠 Conclusión

Comprender los permisos en Linux es esencial para mantener tu sistema seguro y ordenado.

Usando chmod y umask, puedes controlar quién tiene acceso a qué, y evitar errores o accesos no autorizados.

Este conocimiento es vital para entornos multiusuario, servidores, y tareas de desarrollo profesional.

¡Practícalo y conviértelo en parte natural de tu día a día! 🚀🐧