- 1 1. Introducción
- 2 2. ¿Qué es chmod? (Comprensión Básica)
- 3 3. Entendiendo el Significado de -rw-r–r–
- 4 4. Cómo establecer -rw-r--r-- con chmod (Guía práctica)
- 5 5. Verificar permisos con el comando ls -l
- 6 6. Comprobación y Cambio de Permisos Usando Herramientas GUI (Amigable para Principiantes)
- 7 7. Notas Importantes y Solución de Problemas para chmod
- 8 8. Casos de uso prácticos y escenarios comunes
- 8.1 ¿Cómo se utilizan los permisos chmod en entornos reales?
- 8.2 1. Gestión de archivos HTML en un servidor web
- 8.3 2. Conceder permiso de ejecución a archivos de script
- 8.4 3. Restringir el acceso a archivos sensibles
- 8.5 4. Compartir un directorio de forma segura
- 8.6 5. Evitar problemas causados por una mala configuración
- 9 9. Preguntas frecuentes (FAQ)
- 9.1 P1. ¿Cuál es la diferencia entre chmod 644 y -rw-r--r--?
- 9.2 P2. ¿Qué ocurre si un archivo no tiene permiso de ejecución?
- 9.3 P3. ¿Es seguro establecer 644 en directorios?
- 9.4 Q4. ¿Existen riesgos al usar chmod -R?
- 9.5 Q5. Sigo recibiendo “Permiso denegado”. ¿Qué debo verificar?
- 9.6 Q6. Quiero compartir un archivo pero evitar su edición. ¿Qué debo hacer?
- 9.7 Q7. Cambié accidentalmente los permisos. ¿Cómo puedo restaurarlos?
- 10 10. Resumen
1. Introducción
¿Qué son los “Permisos de Acceso” en Linux?
En Linux y sistemas similares a Unix, la gestión adecuada de los permisos de acceso a archivos y directorios es extremadamente importante. Esto es esencial no solo desde el punto de vista de la seguridad, sino también para mantener operaciones estables del sistema.
Muchas personas probablemente se han preguntado qué significan símbolos como -rw-r--r-- al ver listas de archivos en la terminal.
La Relación Entre chmod y -rw-r–r–
Estos símbolos representan los permisos de acceso a archivos utilizando notación simbólica. El comando chmod se utiliza para establecer y modificar estos permisos. En otras palabras, cuando usas chmod para asignar permisos específicos a un archivo, el resultado se muestra como símbolos como -rw-r--r--.
Propósito de Este Artículo y Público Objetivo
Este artículo explica qué significa realmente -rw-r--r-- y cómo configurarlo o cambiarlo usando chmod, de una manera fácil de entender para principiantes. También cubrimos consideraciones de seguridad y ejemplos de uso prácticos en el mundo real.
El contenido está dirigido a todos, desde principiantes en Linux hasta usuarios intermedios que se están familiarizando con las operaciones en la terminal, con el objetivo de proporcionar conocimiento práctico utilizable en entornos de trabajo reales.
2. ¿Qué es chmod? (Comprensión Básica)
El Rol del Comando chmod
chmod (pronunciado “change mode”) es un comando utilizado en Linux y sistemas operativos similares a Unix para modificar los permisos de acceso a archivos y directorios.
Usar este comando te permite controlar de manera flexible quién puede realizar qué operaciones (lectura, escritura, ejecución).
La configuración adecuada de permisos es crucial no solo para la seguridad, sino también para prevenir problemas de compartición y ejecución de archivos.
Sintaxis Básica de chmod
chmod [options] [permissions] filename
Por ejemplo:
chmod 644 sample.txt
Este comando cambia los permisos de sample.txt de la siguiente manera:
-rw-r--r-- 1 user group 1234 Apr 13 20:00 sample.txt
- Propietario (usuario): lectura y escritura permitidas (rw-)
- Grupo: solo lectura (r–)
- Otros: solo lectura (r–)
Dos Maneras de Especificar Permisos
Hay dos métodos para especificar permisos con chmod:
- Modo numérico
- Ejemplo:
chmod 755 script.sh - Este método asigna permisos usando números.
- Modo simbólico
- Ejemplo:
chmod u=rw,g=r,o=r file.txt - Este método usa símbolos como u (usuario), g (grupo), o (otros), y r/w/x.
Ambos métodos producen los mismos resultados. El modo numérico es rápido para cambios masivos, mientras que el modo simbólico permite un control más flexible.
Diferencia Entre chmod y chown
Un comando comúnmente confundido es chown:
chmod: cambia los permisos de accesochown: cambia el propietario y el grupo del archivo
Dado que sus propósitos son diferentes, es importante entender claramente el rol de cada comando.
3. Entendiendo el Significado de -rw-r–r–
Estructura de los Símbolos de Permisos
Cuando ejecutas ls -l en Linux, la información del archivo se muestra en el siguiente formato:
-rw-r--r-- 1 user group 1234 Apr 13 2025 sample.txt
La parte más a la izquierda, -rw-r--r--, representa los permisos de acceso del archivo. Entender esto te permite saber exactamente quién puede hacer qué con el archivo.
Desglose Detallado de Cada Parte
① Primer carácter: tipo de archivo
| Symbol | Meaning |
|---|---|
- | Regular file |
d | Directory |
l | Symbolic link |
b | Block device |
c | Character device |
En el caso de -rw-r--r--, el guión inicial - indica un archivo regular.
② Caracteres 2–10: permisos (3 caracteres × 3 conjuntos)
- Propietario (usuario) :
rw-Lectura y escritura permitidas; ejecución no. - Grupo :
r--Solo lectura. - Otros :
r--Solo lectura.
Esto significa que solo el propietario puede editar el archivo, mientras que todos los demás solo pueden verlo.
Representación Numérica: Qué Significa 644
Los permisos en Linux también se pueden expresar usando notación numérica (octal).
El equivalente numérico de -rw-r--r-- es 644.
| User Type | Symbolic | Number | Meaning |
|---|---|---|---|
| Owner | rw- | 6 | Read + Write |
| Group | r-- | 4 | Read only |
| Others | r-- | 4 | Read only |
Los valores numéricos se calculan de la siguiente manera:
- Lectura (r) = 4
- Escritura (w) = 2
- Ejecución (x) = 1
Así, rw- = 4 + 2 = 6, y cada r-- = 4, resultando en 644.
Por qué este permiso se usa con frecuencia
-rw-r--r-- (644) es un permiso muy común para archivos públicos y contenido estático de servidores web, como HTML y CSS.
- Solo el propietario puede modificar el archivo, evitando cambios no deseados
- Otros usuarios pueden leer el archivo, permitiendo su compartición y acceso público
Cuando se usa correctamente, esta configuración equilibra seguridad y usabilidad.
4. Cómo establecer -rw-r--r-- con chmod (Guía práctica)
Cambiar permisos con el comando chmod
Los permisos de acceso a archivos y directorios pueden modificarse libremente usando el comando chmod. Por ejemplo, si deseas establecer los permisos a -rw-r--r--, simplemente aplica el permiso 644.
Establecer permisos usando el modo numérico
Utiliza la sintaxis chmod 644 nombre_del_archivo.
chmod 644 document.txt
Este comando cambia los permisos de document.txt de la siguiente manera:
-rw-r--r-- 1 user group 1234 Apr 13 20:00 document.txt
- Propietario (usuario): lectura y escritura permitidas (rw-)
- Grupo: solo lectura (r–)
- Otros: solo lectura (r–)
Establecer permisos usando el modo simbólico
Si necesitas un control más flexible, el modo simbólico es útil.
chmod u=rw,g=r,o=r document.txt
Este comando significa:
u=rw: conceder permisos de lectura y escritura al propietariog=r: conceder permiso de solo lectura al grupoo=r: conceder permiso de solo lectura a los demás
El resultado es exactamente el mismo que usar el modo numérico 644.
Notas importantes al aplicar permisos a directorios
A diferencia de los archivos, los directorios requieren permiso de ejecución (x) para ser accesibles.
Por ejemplo, la siguiente configuración puede restringir el acceso:
chmod 644 my_folder
Con esta configuración se otorga permiso de lectura, pero los usuarios no pueden entrar al directorio porque falta el permiso de ejecución.
Ejemplo correcto:
chmod 755 my_folder
- Propietario: lectura, escritura, ejecución
- Grupo y otros: lectura y ejecución
Esto permite a otros usuarios listar y acceder a los archivos dentro del directorio.
Cambiar permisos recursivamente: la opción -R
Si deseas cambiar permisos de muchos archivos y subdirectorios a la vez, usa la opción -R (recursiva).
chmod -R 644 my_folder
Esto aplica el permiso 644 a todos los archivos bajo my_folder. Sin embargo, este enfoque tiene advertencias importantes.
5. Verificar permisos con el comando ls -l
Cómo ver los permisos de los archivos
Para comprobar los permisos de archivos y directorios en Linux, usa el comando estándar ls -l. Este muestra información detallada como permisos, propietario, tamaño del archivo y fecha de última modificación.
Uso básico
ls -l
La salida se ve así:
-rw-r--r-- 1 naoya devs 2048 Apr 13 20:00 index.html
Cada columna tiene el siguiente significado:
| Field | Description |
|---|---|
-rw-r--r-- | Permissions |
1 | Number of hard links |
naoya | Owner (user) |
devs | Group |
2048 | File size (bytes) |
Apr 13 20:00 | Last modified date |
index.html | File name |
Cómo leer el campo de permisos
Enfócate en la parte -rw-r--r--. Puede desglosarse de la siguiente manera:
- Primer carácter: tipo de archivo
-: archivo regulard: directoriol: enlace simbólico- Los nueve caracteres restantes: permisos (3 × 3 conjuntos)
- Propietario:
rw-→ lectura y escritura - Grupo:
r--→ solo lectura - Otros:
r--→ solo lectura
Esto indica que solo el propietario puede editar el archivo, mientras que los demás solo pueden leerlo.
Verificar un archivo específico
Para comprobar los permisos de un archivo concreto, especifica su nombre:
ls -l index.html
Esto es útil cuando trabajas en directorios que contienen muchos archivos.
Verificar permisos de un directorio
Los directorios también pueden revisarse con ls -l. Para ver el propio directorio en lugar de su contenido, usa la opción -d.
ls -ld my_folder
Esto muestra la información de permisos solo para my_folder.
Gestión segura de permisos
Después de modificar permisos con chmod, se recomienda siempre verificar el resultado usando ls -l.
Los ajustes incorrectos pueden provocar problemas de seguridad o comportamientos inesperados.
También puedes combinarlo con tuberías para filtrar:
ls -l | grep '.sh'
Esto filtra y muestra solo archivos de script de shell.
6. Comprobación y Cambio de Permisos Usando Herramientas GUI (Amigable para Principiantes)
Una Opción para Quienes No se Sienten Cómodos con la Línea de Comandos
Linux a menudo se maneja a través del terminal y la línea de comandos, pero muchos principiantes consideran que las interfaces basadas en texto son difíciles o propensas a errores. Para esos usuarios, los permisos de archivos también pueden comprobarse y modificarse usando herramientas GUI (Interfaz Gráfica de Usuario).
Usando el Administrador de Archivos de Ubuntu (Nautilus)
Las distribuciones de Linux como Ubuntu incluyen un administrador de archivos predeterminado llamado Nautilus, similar al Explorador de Windows.
Cómo comprobar los permisos:
- Haz clic derecho en el archivo o directorio objetivo
- Selecciona “Propiedades”
- Abre la pestaña “Permisos” (el nombre puede variar según la versión)
Qué puedes hacer allí:
- Ver y cambiar el propietario y el grupo (se requieren privilegios de administrador)
- Alternar los permisos de lectura, escritura y ejecución
- Los cambios se aplican de inmediato
En lugar de notaciones simbólicas como rw- o r--, los permisos se muestran en descripciones en lenguaje sencillo como “Solo lectura” o “Lectura y escritura”, lo que los hace fáciles de entender para principiantes.
WinSCP (Cliente SFTP para Usuarios de Windows)
Al conectarse desde Windows a un servidor Linux remoto, WinSCP permite gestionar los permisos mediante una GUI.
Pasos:
- Inicia sesión en el servidor usando WinSCP
- Haz clic derecho en un archivo y selecciona “Propiedades”
- Cambia los valores de permiso (p.ej., 644) o usa casillas de verificación
- Haz clic en “Aceptar” para aplicar los cambios
Ventajas:
- Los permisos pueden verse tanto en formato numérico como simbólico
- Los cambios de permisos recursivos son compatibles mediante la GUI
Notas:
- Los archivos que requieren privilegios de root pueden no ser modificables sin permisos sudo
WinSCP is a popular free file manager for Windows supporting…

FileZilla (Cliente SFTP Multiplataforma)
El cliente SFTP multiplataforma FileZilla, disponible para macOS y Linux, también permite cambiar permisos.
Pasos:
- Conéctate al servidor
- Haz clic derecho en el archivo objetivo
- Selecciona “Permisos de Archivo”
- Ajusta los permisos usando casillas de verificación o valores numéricos y haz clic en “Aceptar”
Ventajas y Precauciones de las Operaciones Basadas en GUI
Ventajas:
- Menos propenso a errores para principiantes
- Los cambios pueden confirmarse visualmente de inmediato
- No es necesario memorizar la sintaxis de los comandos
Precauciones:
- Algunos entornos de servidor no permiten cambiar permisos mediante herramientas GUI
- Los valores mostrados pueden no reflejar siempre los permisos realmente aplicados, por lo que se recomienda verificar con
ls -l
FileZilla - The free FTP solution for both client and server…
7. Notas Importantes y Solución de Problemas para chmod
Sigue sin Funcionar—¿Por Qué?
Incluso después de cambiar los permisos usando chmod, los archivos pueden no comportarse como se espera. En la mayoría de los casos, esto se debe a permisos mal configurados o malentendidos. A continuación se presentan problemas comunes del mundo real y sus soluciones.
Errores de “Permiso denegado”
Síntoma:
bash: ./script.sh: Permission denied
Causa:
- El archivo no tiene permiso de ejecución (x)
Solución:
chmod +x script.sh
O usando modo numérico:
chmod 755 script.sh
Ten en cuenta que tener permiso de lectura o escritura no implica permiso de ejecución.
Los Directorios Sin Permiso de Ejecución No Pueden Ser Accedidos
Aplicar chmod 644 a un directorio puede impedir el acceso a su contenido.
Razón:
- El permiso de ejecución (x) en los directorios es necesario para entrar y listar su contenido.
Ejemplo:
chmod 644 my_folder
ls my_folder
Esto puede resultar en un error.
Solución:
chmod 755 my_folder
Trampas de los Cambios Recursivos (-R)
Aunque chmod -R es conveniente, aplica los mismos permisos tanto a archivos como a directorios, lo que puede causar problemas inesperados.
Error común:
chmod -R 644 /var/www/html
Esto elimina los permisos de ejecución de los directorios, haciéndolos inaccesibles.
Enfoque correcto:
.
# Apply execute permissions to directories
find /var/www/html -type d -exec chmod 755 {} \;
# Apply file permissions
find /var/www/html -type f -exec chmod 644 {} \;
Desajuste entre propietario y grupo
Los permisos por sí solos no son suficientes; la propiedad del archivo y la configuración de grupos también importan.
Por ejemplo, si un usuario del servidor web como apache necesita leer un archivo, pero el propietario es un usuario normal y los demás no tienen permiso de lectura, el archivo no se servirá correctamente.
Soluciones:
- Cambiar propietario:
sudo chown www-data:www-data index.html - Conceder acceso al grupo:
chmod 640 index.html(si el grupo es el adecuado)
Por qué chmod 777 es peligroso
Algunos usuarios intentan solucionar problemas estableciendo los permisos a 777, pero esto es extremadamente peligroso.
Razones:
- Cualquiera puede leer, escribir y ejecutar el archivo
- Alto riesgo de manipulación o ejecución de scripts maliciosos
Prácticas recomendadas:
- Archivos : 644 o 600
- Directorios : 755 o 700
- Scripts/Binarios : 755 (según sea necesario)
8. Casos de uso prácticos y escenarios comunes
¿Cómo se utilizan los permisos chmod en entornos reales?
El comando chmod y permisos como -rw-r--r-- se utilizan frecuentemente en operaciones reales de servidores y entornos de desarrollo.
A continuación se presentan varios escenarios representativos que ilustran cómo se aplican los permisos en la práctica.
1. Gestión de archivos HTML en un servidor web
Escenario:
Al publicar archivos HTML en un servidor web como Apache o Nginx, el permiso típico es -rw-r--r-- (644).
chmod 644 index.html
¿Por qué 644?
- El propietario (administrador del sitio) necesita acceso de escritura
- El usuario del servidor web (p.ej., www-data) solo necesita acceso de lectura
- El acceso de escritura para otros es innecesario e inseguro
Esta configuración permite la publicación segura de contenido web utilizando el principio de menor privilegio.
2. Conceder permiso de ejecución a archivos de script
Escenario:
Creaste un script de shell backup.sh, pero la ejecución falla con un error de “Permiso denegado”.
chmod 755 backup.sh
Significado de esta configuración:
- Propietario: lectura, escritura, ejecución (rwx)
- Grupo y otros: lectura y ejecución (rx)
Esto permite que otros ejecuten el script mientras restringe la edición al propietario.
3. Restringir el acceso a archivos sensibles
Escenario:
Gestionas un archivo secrets.txt que contiene claves API o contraseñas y deseas evitar que cualquier otra persona lo acceda.
chmod 600 secrets.txt
Significado:
- Propietario: solo lectura y escritura
- Grupo y otros: sin acceso
Esta es una práctica crítica de seguridad. Los archivos sensibles siempre deben gestionarse con 600 o 400 (solo lectura).
4. Compartir un directorio de forma segura
Escenario:
Creas un directorio compartido shared_folder al que acceden varios desarrolladores.
chmod 770 shared_folder
Significado:
- Propietario y grupo: permisos completos (rwx)
- Otros: sin acceso
Al asignar al equipo de desarrollo como grupo, habilitas una colaboración segura y eficiente. La membresía del grupo puede ajustarse usando chgrp.
5. Evitar problemas causados por una mala configuración
Escenario:
Ejecutas accidentalmente chmod -R 777 ., haciendo que todos los archivos sean escribibles por cualquiera.
Precauciones recomendadas:
- Siempre usa
findpara diferenciar entre archivos y directorios - Verifica los permisos de antemano con
ls -l - Prueba los cambios primero en un entorno de pruebas
9. Preguntas frecuentes (FAQ)
P1. ¿Cuál es la diferencia entre chmod 644 y -rw-r--r--?
R. Representan el mismo permiso; solo difiere la notación.
chmod 644: especificación numérica de permisos-rw-r--r--: representación simbólica mostrada porls -l
P2. ¿Qué ocurre si un archivo no tiene permiso de ejecución?
R. La ejecución de scripts o binarios fallará.
bash: ./script.sh: Permission denied
Solución:
chmod +x script.sh
P3. ¿Es seguro establecer 644 en directorios?
.A. Generalmente, no.
Los directorios requieren permiso de ejecución (x) para ser accesibles.
Configuración correcta:
chmod 755 directory_name
Q4. ¿Existen riesgos al usar chmod -R?
A. Sí. Los mismos permisos se aplican tanto a archivos como a directorios.
chmod -R 644 my_project/
Esto elimina los permisos de ejecución de los directorios.
Enfoque más seguro:
find my_project/ -type d -exec chmod 755 {} \;
find my_project/ -type f -exec chmod 644 {} \;
Q5. Sigo recibiendo “Permiso denegado”. ¿Qué debo verificar?
A. Verifique lo siguiente:
- El archivo tiene permiso de ejecución si se está ejecutando
- Usted es el propietario o tiene permiso de escritura
- El directorio tiene permiso de ejecución
- Tiene privilegios sudo si es necesario
Q6. Quiero compartir un archivo pero evitar su edición. ¿Qué debo hacer?
A. Use permisos 644 o 444.
chmod 644 share.txt
- 644: los demás solo pueden leer
- 444: todos tienen acceso solo de lectura
Q7. Cambié accidentalmente los permisos. ¿Cómo puedo restaurarlos?
A. Compare con un archivo configurado correctamente.
ls -l /path/to/correct_file
Vuelva a aplicar los permisos usando chmod. Idealmente, documente los permisos predeterminados para su proyecto.
10. Resumen
Por qué es importante entender chmod y los permisos
Este artículo explicó el comando chmod y el significado de los permisos simbólicos como -rw-r--r--, que se usan ampliamente en sistemas Linux y similares a Unix.
Estos conceptos son esenciales para garantizar seguridad del sistema, estabilidad operativa y compartición precisa de archivos.
Puntos clave
chmodmodifica los permisos de acceso a archivos y directorios-rw-r--r--significa que el propietario puede leer y escribir, los demás solo pueden leer- Las representaciones numérica (
644) y simbólica (-rw-r--r--) son equivalentes - Los permisos pueden establecerse usando modos numéricos o simbólicos
ls -lse usa para verificar los permisos- Herramientas GUI como Nautilus, WinSCP y FileZilla también pueden gestionar los permisos
- Los permisos incorrectos a menudo causan errores de “Permiso denegado”
- Siempre hay una razón detrás de los patrones de permisos comúnmente usados
El “Mejor” permiso depende del contexto
No existe una configuración de permisos universal que sirva para todos los casos.
Los permisos siempre deben elegirse según el propósito, los usuarios y el nivel de seguridad requerido.
Consejo final
Aunque los permisos pueden parecer complejos al principio, dominar chmod le permite prevenir problemas de forma proactiva y operar los sistemas de manera segura.
Siempre pregúntese:
¿Quién debe acceder a este archivo y con qué propósito?
Mantener esta perspectiva le ayudará a crear entornos Linux seguros y confiables.




