09 Permisos en Linux II
Published Apr 11, 2023
🧠 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 escribirr--
(grupo): solo puede leerr--
(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
- Crea un archivo con
touch
. - Usa
chmod
en modo numérico y simbólico. - Cambia permisos de carpetas también (
chmod 755 mi_carpeta/
). - Prueba con
ls -l
para verificar los cambios. - Cambia temporalmente el
umask
y crea un nuevo archivo para ver la diferencia.
📘 Próximos Pasos
- Aprende sobre permisos especiales:
SUID
,SGID
, ySticky Bit
. - Investiga cómo los permisos afectan a scripts o servidores web.
- Consulta los manuales con
man chmod
yman 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! 🚀🐧