Chmod por Letras Vs Números

Chmod por Letras Vs Números

Recientemente, un colega me pidió que lo usara chmodcon letras en lugar de números. Aparte de la obvia ventaja de legibilidad, ¿existe alguna razón particular para utilizar letras en lugar de números?

Respuesta1

La chmodnotación simbólica es más detallada en comparación con la notación octal, lo que permite la modificación de bits de modo específicos sin tocar otros bits de modo.

La notación simbólica consta de tres componentes:

chmod [references][operator][modes] file

Consiste referencesen una combinación de letras ugoa, que especifican qué acceso de usuario al filese modificará: el usuario propietario ( u), otros usuarios en el grupo del archivo ( g), otros usuarios que no están en el grupo del archivo ( o), o todos los usuarios. ( a). Si referencesse omite el componente, el valor predeterminado es para todos los usuarios, pero solo umaskse modifican los permisos permitidos por ellos.

Esto + operatorhace que los bits de modo de archivo especificados se agreguen a los bits de modo de archivo existentes de cada archivo; -hace que sean eliminados; y =hace que se agreguen y se eliminen bits no especificados, excepto setuidlos setgidbits establecidos para directorios, a menos que se especifique explícitamente.

El modeconsiste en una combinación de las letras rwxXst, que corresponden a leer ( r), escribir ( w), ejecutar (o buscar directorios) ( x), ejecutar/buscar solo si el archivo es un directorio o ya tiene permiso de ejecución para algún usuario ( X), setuido setgid(dependiendo de las referencias especificadas) ( s) y un indicador de eliminación restringida o un bit adhesivo ( t). Alternativamente, puede modeconstar de una de las letras ugo, en cuyo caso modecorresponde a los permisos actualmente otorgados al propietario ( u), a los miembros del grupo del archivo ( g) o a los permisos de los usuarios en ninguna de las categorías anteriores ( o).

Ejemplos

Suponiendo que el permiso establecido filees0764/-rwxrw-r--

Eliminar el permiso de otros usuarios que no estén en el grupo del archivo:

  • Octal:chmod 760 file

    Tenga en cuenta que los permisos existentes que no se modifican deben repetirse cuando se utiliza la notación octal.

  • Simbólico:chmod o-rwx file

    Con la notación simbólica, los permisos de archivos existentes no importan.

Colocar setuid:

  • Octal:chmod 4764 file

  • Simbólico:chmod u+s file

Colocar setgid:

  • Octal:chmod 2764 file
  • Simbólicochmod g+s file

Respuesta2

El uso de letras le permite activar y desactivar bits individuales sin cambiar los otros bits.

Supongamos que tengo el siguiente directorio:

drwxrwsr-x   6 f261-01a  g261-01a  4096 Sep 12 17:51 /home/teams/261/f261-01a

Si quiero desactivar el permiso de lectura para otros y quiero usar números, podría hacerlo rápidamente chmod 751. Excepto que acabo de desactivar el bit setgid en el directorio. Ups.

Sin embargo, si uso chmod o-r, solo desactivo el bit de lectura que quería y el bit setgid en el directorio permanece configurado.

También es útil si desea activar setuid, setgid o sticky bits en un archivo o directorio. Especialmente si lo haces tan raramente que tienes problemas para recordar qué bit es cuál en el 4º octeto.

Entonces, depende de lo que estés haciendo. Todavía prefiero usar números cuando solo estoy configurando permisos y, para empezar, no me importa lo que haya allí. Pero si alterna bits individuales, la notación de letras es mucho más sencilla.

información relacionada