El comando Chmod y los permisos de archivos de Linux explicados

  • Brian Curtis
  • 0
  • 4814
  • 685
Anuncio

Así que has encontrado un sabor de Linux que te gusta, pero ahora estás confundido porque no tienes la menor idea sobre los comandos de terminal y los permisos de archivos de Linux?

O tal vez tiene un sitio web alojado en un servidor Linux y se ha encontrado con algunos problemas de permisos de archivos que solo se pueden resolver con algo de magia de línea de comandos.

De todos modos, uno de los comandos de Linux más esenciales para aprender Una A-Z de Linux: 40 comandos esenciales que debe conocer Una A-Z de Linux: 40 comandos esenciales que debe conocer Linux es la tercera rueda a menudo ignorada para Windows y Mac. Sí, durante la última década, el sistema operativo de código abierto ha ganado mucha tracción, pero aún está muy lejos de ser considerado ... es un comando pequeño pero poderoso llamado chmod. Pero antes de explicar qué hace el comando, primero debemos entender un poco sobre cómo Linux maneja la seguridad de los archivos.

Los fundamentos de los permisos de archivos de Linux

Los sistemas operativos Linux son en realidad sistemas similares a Unix (que comprenden Linux frente a Unix), y los sistemas similares a Unix se acercan a los permisos de archivos de la siguiente manera:

Cada archivo tiene un propietario, que determina el archivo “clase de usuario.” Cada archivo también tiene un grupo, que determina el archivo “clase grupal.” Se determina que cualquier usuario del sistema que no sea el propietario y no pertenezca al mismo grupo es otros.

Todos los archivos en sistemas tipo Unix tienen permisos asignados a las tres clases, y estos determinan qué acciones pueden tomar dichas clases para el archivo dado.

Las tres acciones disponibles en un sistema tipo Unix son: leer (la capacidad de abrir y ver el contenido del archivo), escribir (la capacidad de abrir y modificar el contenido de un archivo), y ejecutar (la capacidad de ejecutar el archivo como un programa ejecutable).

En otras palabras, los permisos de un archivo determinan si:

  • El propietario puede leer, escribir y ejecutar el archivo..
  • El grupo puede leer, escribir y ejecutar el archivo..
  • Cualquier otra persona puede leer, escribir y ejecutar el archivo..

Los permisos de archivos de Linux se pueden mostrar en dos formatos.

El primer formato se llama notación simbólica, que es una cadena de 10 caracteres: un carácter que representa el tipo de archivo, luego nueve caracteres que representan los permisos de lectura (r), escritura (w) y ejecución (x) del archivo en orden de propietario, grupo y otros. Si no está permitido, se usa el símbolo de guión (-).

Por ejemplo:

-rwxr-xr--

Esto significa que es un archivo normal con permisos de lectura, escritura y ejecución para el propietario; leer y ejecutar permisos para el grupo; y solo leer permisos para todos los demás.

El segundo formato se llama notación numérica, que es una cadena de tres dígitos que representan cada uno de los permisos de usuario, grupo y otros, respectivamente. Cada dígito puede variar de 0 a 7, y el valor de cada dígito se obtiene sumando los permisos de la clase:

  • 0 significa que no se permiten permisos.
  • +1 si la clase puede ejecutar el archivo.
  • +2 si la clase puede escribir en el archivo.
  • +4 si la clase puede leer el archivo.

En otras palabras, el significado de cada valor de dígito termina siendo:

  • 0: sin permiso
  • 1: ejecutar
  • 2: escribir
  • 3: escribir y ejecutar
  • 4: Leer
  • 5: leer y ejecutar
  • 6: Leer y escribir
  • 7: Leer, escribir y ejecutar

Entonces el ejemplo anterior (-rwxr-xr--) sería 754 en notación numérica.

Esos son los permisos de archivos de Linux en pocas palabras.

¿Qué es chmod??

En sistemas tipo Unix, chmod es un comando de nivel de sistema que significa “modo de cambio” y le permite cambiar manualmente la configuración de permisos de un archivo.

No debe confundirse con chown, que es otro comando de nivel de sistema en sistemas tipo Unix que significa “Cambio de propietario” y le permite asignar la propiedad de un archivo a otro usuario, o chgrp, Lo que significa “cambiar de grupo” y asigna un archivo a un grupo diferente. Es importante saberlo, pero no se usa tan comúnmente como chmod.

¿Qué significa Chmod 644??

Establecer los permisos de un archivo en 644 hace que solo el propietario pueda acceder y modificar el archivo como quiera, mientras que todos los demás solo pueden acceder sin modificar, y nadie puede ejecutar el archivo, ni siquiera el propietario. Esta es la configuración ideal para archivos que son de acceso público porque equilibra la flexibilidad con la seguridad..

¿Qué significa Chmod 755??

Establecer los permisos de un archivo en 755 es básicamente lo mismo que 644, excepto que todos también tienen permisos de ejecución. Esto se usa principalmente para directorios de acceso público porque se necesita el permiso de ejecución para cambiar a un directorio.

¿Qué significa Chmod 555??

Establecer los permisos de un archivo en 555 hace que el archivo no pueda ser modificado por nadie más que por el superusuario del sistema (aprenda más sobre el superusuario de Linux ¿Qué es SU y por qué es importante usar Linux de manera efectiva? ¿Qué es SU y por qué es? ¿Importante para usar Linux de manera efectiva? La cuenta de usuario de Linux SU o root es una herramienta poderosa que puede ser útil cuando se usa correctamente o devastadora si se usa imprudentemente. Veamos por qué debería ser responsable al usar SU). Esto no se usa tan comúnmente como 644, pero aún es importante saberlo porque la configuración de solo lectura evita cambios accidentales y / o manipulación.

¿Qué significa Chmod 777??

Establecer los permisos de un archivo en 777 hace que cualquiera pueda hacer lo que quiera con el archivo. Este es un gran riesgo de seguridad, especialmente en servidores web! Literalmente, cualquiera puede acceder al archivo, modificarlo como lo desee y ejecutarlo en el sistema. Puedes imaginar el daño potencial si un usuario deshonesto lo tiene en sus manos.

Cómo usar Chmod en Linux

El comando chmod tiene un formato simple:

chmod [permisos] [archivo]

Los permisos se pueden otorgar en notación numérica, que es el mejor formato para usar cuando desea asignar permisos específicos para todas las clases:

chmod 644 example.txt

Los permisos también se pueden otorgar en notación simbólica, lo cual es útil cuando solo desea modificar los permisos de una clase en particular. Por ejemplo:

chmod u = rwx example.txt chmod g = rw example.txt chmod o = rw example.txt

Puede modificar los permisos para varias clases, como este ejemplo que establece que el propietario lea / escriba / ejecute pero que el grupo y otros lean / ejecuten:

chmod u = rwx, g = rw, o = rw example.txt

Al asignar los mismos permisos a varias clases, puede combinarlos:

chmod u = rwx, go = rw example.txt

Pero la belleza del uso de la notación simbólica brilla cuando solo desea agregar o eliminar el permiso para una acción en particular para una clase en particular.

Por ejemplo, esto agrega El permiso de ejecución para el propietario del archivo:

chmod u + x ejemplo.txt

Y esto elimina Los permisos de escritura y ejecución para otros usuarios:

chmod o-wx ejemplo.txt

Por último, si desea aplicar un conjunto particular de permisos a todos los archivos y carpetas dentro de un directorio particular (es decir, un chmod recursivo), use la opción -R y apunte a un directorio:

chmod -R 755 directorio_ejemplo

Si bien el comando chmod parece un poco loco a primera vista, en realidad es bastante simple y completamente lógico. Si comprende lo anterior, básicamente ha dominado chmod!

Aprenda más sobre el dominio de Linux

Los comandos como chmod, chown y chgrp son solo la punta del iceberg de Linux. Si es nuevo en el sistema operativo, le recomendamos que consulte estos trucos para principiantes de Linux, así como estos comandos de Linux que nunca debe ejecutar.

Pero lo más importante, lo harías mejor al consultar nuestra guía integral para principiantes de Ubuntu y Linux Ubuntu: una guía para principiantes Ubuntu: una guía para principiantes ¿Tienes curiosidad sobre Ubuntu, pero no estás seguro de por dónde empezar? Todo lo que pueda necesitar para comenzar con la última versión de Ubuntu está aquí, escrito en inglés sencillo y fácil de entender. , que le enseñará todo lo que necesita saber para comenzar y familiarizarse lo suficiente como para sentirse cómodo.




Nadie ha comentado sobre este artículo todavía.

Sobre tecnología moderna, simple y asequible.
Tu guía en el mundo de la tecnología moderna. Aprenda a usar las tecnologías y los dispositivos que nos rodean todos los días y aprenda a descubrir cosas interesantes en Internet.