Saltar al contenido

2.4 Gestión de Permisos

En Linux, cada archivo y directorio es propiedad de un Usuario y un Grupo, y tiene permisos para Usuario (u), Grupo (g), y Otros (o).

Ejecuta ls -l:

-rwxr-xr--  1 alice developers  2048 Jan 01 12:00 script.sh
  • -: Tipo de archivo (- = archivo, d = directorio).
  • rwx: Permisos de Usuario (Lectura, Escritura, Ejecución).
  • r-x: Permisos de Grupo (Lectura, sin Escritura, Ejecución).
  • r--: Permisos de Otros (Solo Lectura).
  • alice: Propietario.
  • developers: Grupo Propietario.

Fácil de leer.

  • chmod u+x script.sh: Añade execución para usuario.
  • chmod g-w file.txt: Quita escritura (w) para grupo.
  • chmod o=r file.txt: Establece otros a solo lectura (r).

Atajo profesional.

  • Lectura (r) = 4
  • Escritura (w) = 2
  • Ejecución (x) = 1

Patrones comunes:

  • 755 (rwxr-xr-x): Estándar para scripts/programas. Usuario completo, otros lectura/exec.
  • 644 (rw-r--r--): Estándar para archivos de datos.
  • 600 (rw-------): Seguro (claves SSH). Solo el propietario puede leer/escribir.
  • 777: Todo el mundo puede hacer todo. ¡Evita esto!

Solo root puede cambiar la propiedad de los archivos.

# Cambiar propietario a bob
sudo chown bob file.txt

# Cambiar propietario a bob y grupo a staff
sudo chown bob:staff file.txt

# Recursivo (carpeta)
sudo chown -R bob:staff /var/www/html