Saltar al contenido principal
eLearner.app
Módulo 4 · Lección 1 de 28/11 en el curso~12 min
Lecciones del módulo (1/2)

Gestión de permisos (chmod)

En Linux, el acceso a archivos y carpetas está regulado por un sistema de permisos. Cada archivo/carpeta pertenece a un usuario propietario y a un grupo de usuarios.

Los permisos se dividen en tres categorías de destinatarios:

  1. User (u): El propietario del archivo.
  2. Group (g): Los miembros del grupo asociado al archivo.
  3. Others (o): Todos los demás usuarios del sistema.

Para cada categoría, existen tres tipos de acciones permitidas o denegadas:

  • Read (r): Leer el archivo o enumerar el contenido de una carpeta.
  • Write (w): Modificar el archivo o crear/eliminar archivos en una carpeta.
  • Execute (x): Ejecutar un archivo (ej. un script) o entrar en una carpeta.

Notación típica mostrada por ls -l: -rwxr-xr-x. El primer carácter indica el tipo (ej. - para archivo, d para directorio), seguido de tres tripletas para user, group y others.


Modificar permisos: chmod

El comando chmod (change mode) permite modificar los permisos de un archivo. Existen dos formas principales de especificarlos:

1. Modo Simbólico

Utiliza letras y operadores (+, -, =) para agregar, quitar o establecer los permisos:

Bash
chmod u+x script.sh    # Agrega el permiso de ejecución (x) al propietario (u)
chmod g-w file.txt     # Quita el permiso de escritura (w) al grupo (g)
chmod a+r file.txt     # Hace que el archivo sea legible para cualquiera (all: u, g, o)

2. Modo Octal (Numérico)

Utiliza tres dígitos octales del 0 al 7, donde cada dígito representa la suma de los permisos de la categoría (r=4, w=2, x=1):

  • 7 = rwx (4 + 2 + 1)
  • 6 = rw- (4 + 2)
  • 5 = r-x (4 + 1)
  • 4 = r-- (4)
  • 0 = --- (ningún permiso)
Bash
chmod 755 script.sh    # Propietario: rwx (7), Grupo: r-x (5), Otros: r-x (5)
chmod 600 private.key  # Propietario: rw- (6), Grupo: --- (0), Otros: --- (0)

Pruébalo tú

Ejercicio 1: Imposta permessi standard

Ejercicio#linux.m4.l1.e1
Intentos: 0Cargando...

Establece los permisos del archivo 'script.sh' para que el propietario pueda leer, escribir y ejecutar el archivo (rwx), mientras que el grupo y otros solo puedan leerlo y ejecutarlo (r-x). Usa el modo octal.

Cargando editor...
Mostrar pista

El código octal para rwx es 7 (4+2+1), mientras que para r-x es 5 (4+1). Por lo tanto, usa chmod 755.

Solución disponible después de 3 intentos

Ejercicio 2: Proteggi una chiave privata

Ejercicio#linux.m4.l1.e2
Intentos: 0Cargando...

Modifica los permisos del archivo 'private.key' para que sea legible y modificable (rw-) solo por el propietario, eliminando cualquier acceso al grupo y a otros (---).

Cargando editor...
Mostrar pista

Usa chmod con el código octal 600 (el propietario tiene 4+2, el grupo 0 y otros 0).

Solución disponible después de 3 intentos

Ejercicio 3: Rendi eseguibile un file per tutti

Ejercicio#linux.m4.l1.e3
Intentos: 0Cargando...

Haz que el archivo 'runner.sh' sea ejecutable para todas las categorías de usuarios usando el modo simbólico (a+x).

Cargando editor...
Mostrar pista

Usa la sintaxis chmod a+x seguida del nombre del archivo.

Solución disponible después de 3 intentos