fbpx chmod en Linux: Permisos 755, +x y -R Explicados | Certificação Linux

Comando chmod en Linux: Permisos Octal y Simbólico

📅 17/11/2021 ⏱ 4 min ✍️ Uira Ribeiro
Linux
Comando chmod en Linux: Permisos Octal y Simbólico
Exam Pass App — mais de 7.000 questões LPI, offline, em 5 idiomas, disponível no Android e na App Store
Disponible en
Google Play
Disponible en
App Store

El comando chmod es una de las herramientas más esenciales en Linux para administrar permisos de archivos y directorios. Con chmod, puedes controlar quién puede leer, escribir o ejecutar archivos en tu sistema, garantizando la seguridad y la integridad de los datos. En esta guía completa, aprenderás cómo utilizar chmod, cómo funcionan los permisos en Linux, y ejemplos prácticos para aplicar en tu día a día.

¿Qué es el Comando chmod?

El comando chmod (change mode) se usa para alterar los permisos de archivos y directorios en Linux. Los permisos controlan lo que diferentes tipos de usuarios (propietario, grupo, otros) pueden hacer con un archivo o directorio, como leer, escribir o ejecutarlo. Entender cómo usar chmod es fundamental para gestionar la seguridad y el acceso en tu sistema.

¿Cómo Funcionan los Permisos en Linux?

En Linux, cada archivo o directorio tiene tres tipos de permisos para tres categorías de usuarios:

  1. Usuario (owner): El propietario del archivo.
  2. Grupo (group): Un grupo de usuarios al cual pertenece el archivo.
  3. Otros (others): Todos los demás usuarios.

Los permisos se representan con tres letras:

  • r: Permiso de lectura (read).
  • w: Permiso de escritura (write).
  • x: Permiso de ejecución (execute).

Cada uno de estos permisos puede ser asignado al usuario, grupo y otros.

Usando el Comando chmod

El comando chmod puede ser utilizado de dos maneras principales: usando la notación simbólica o la notación numérica.

1. Notación Simbólica

La notación simbólica usa letras para representar los permisos:

  • u: Usuario (owner)
  • g: Grupo
  • o: Otros
  • a: Todos (user, group, others)

Para agregar, remover o asignar permisos, usa los símbolos +, -, y =.

Ejemplo:

chmod u+rwx,g+rx,o+r arquivo.txt

Este comando otorga todos los permisos al usuario, permisos de lectura y ejecución al grupo, y solo lectura para otros.

2. Notación Numérica

En la notación numérica, cada permiso se representa con un número:

  • r = 4
  • w = 2
  • x = 1

Los permisos se combinan para formar un número de 3 dígitos. Cada dígito representa los permisos del usuario, grupo, y otros, respectivamente.

Ejemplo:

chmod 755 script.sh

Este comando define los permisos para que el usuario tenga lectura, escritura y ejecución (7 = 4+2+1), mientras que el grupo y otros tienen solo lectura y ejecución (5 = 4+1).

Ejemplos Prácticos del Uso de chmod

1. Haciendo un Archivo Ejecutable

Si tienes un script que deseas hacer ejecutable:

chmod +x script.sh

Este comando agrega el permiso de ejecución para todos los usuarios.

2. Removiendo Permisos de Escrita para Otros

Para garantizar que solo el propietario pueda modificar un archivo:

chmod o-w arquivo.txt

Este comando remueve el permiso de escritura para otros usuarios.

3. Definiendo Permisos Recursivos

Si necesitas alterar los permisos de todos los archivos y directorios dentro de una carpeta:

chmod -R 755 /caminho/para/diretório

El -R aplica los permisos recursivamente a todos los archivos y subdirectorios.

4. Restringiendo Acceso Totalmente a Otros

Para impedir que cualquier usuario además del propietario acceda a un archivo:

chmod 700 arquivo.conf

Este comando garantiza que solo el propietario puede leer, escribir y ejecutar el archivo.

5. Permisos Predeterminados con umask

Si deseas que los nuevos archivos creados tengan permisos específicos automáticamente, puedes configurar esto con umask:

umask 022

Este comando hace que los nuevos archivos se creen con permisos 755 (o rw-r--r-- para archivos).

Entendiendo Permisos Especiales: SUID, SGID, y Sticky Bit

Además de los permisos básicos, Linux también tiene permisos especiales que pueden ser configurados con chmod.

1. SUID (Set User ID)

Cuando SUID está definido, un archivo ejecutable se ejecuta con los permisos del propietario en lugar del usuario que lo ejecuta:

chmod u+s arquivo

2. SGID (Set Group ID)

Cuando SGID se aplica a un directorio, los archivos creados en él heredan el grupo del directorio:

chmod g+s diretório

3. Sticky Bit

El Sticky Bit en un directorio impide que los usuarios eliminen archivos que no les pertenecen:

chmod +t /diretório/compartilhado

Conclusión

El comando chmod en Linux es una herramienta poderosa para administrar los permisos de archivos y directorios. Comprender y aplicar los permisos correctos es fundamental para garantizar la seguridad y funcionalidad del sistema. Ya sea configurando un simple script o administrando un directorio compartido, chmod ofrece la flexibilidad necesaria para satisfacer sus necesidades.

Consejo: Siempre revise los permisos de los archivos y directorios críticos en su sistema para evitar accesos no autorizados y mantener la integridad de los datos.

Explore más sobre cómo cambiar propietarios de archivos con el comando chown y cómo configurar permisos predeterminados para nuevos archivos usando umask en nuestra guía completa. Si necesita permisos avanzados, lea nuestra publicación sobre Access-Control-Lists (ACLs).

Uira Ribeiro

Prof. Uirá Ribeiro

Chair do Board do Linux Professional Institute

Después de años viendo profesionales perder horas en tareas simples por no conocer las herramientas correctas de Linux, decidí enseñar.
Hoy soy autor de la mayoría de los Materiales de Aprendizaje oficiales de la LPI y mentor de más de 14,000 alumnos certificados.

Conoce mi historia completa →

Eso fue solo una pieza. El curso enseña el camino completo — desde tu primer comando hasta el día del examen.

Certificação Linux — a plataforma líder em certificações Linux no Brasil
WhatsApp