Cuando instalo un programa, me recomienda que lo haga chmod 4555. Bien, sé acerca de los valores si solo uso tres números. Por ejemplo
chmod 555 test-file
daré
-r-xr-xr-x
4 para escritura, 2 para lectura y 1 para ejecución. Pero cuando hago esto:
chmod 4555 test-file
me da
-r-sr-xr-x
Entonces, xcambió a s. ¿Lo que significa eso?
command-line
chmod
Mas Bagol
fuente
fuente

Respuestas:
En realidad, hay 4 conjuntos de atributos con los que puede trabajar a través de
chmod.Special,User/Owner,Group, YOthersen ese orden, cuando se trabaja con los chmods de cuatro números, con ese primer número siendo bits especiales que se pueden configurar.chmod 4555equivale a lo siguiente:Set UIDbit: ejecuta el archivo como propietario independientemente del usuario que lo esté ejecutandoRead, ExecuteRead, ExecuteRead, ExecuteLa
scadena en su 'legible por humanos' para permisos indica que elSetUIDbit (explicado a continuación) está configurado.Efectivamente, podemos dividir el
chmodargumento de los permisos de cuatro números en descriptores específicos de la siguiente manera, y hacer los cálculos para determinar qué sería a4en la primera sección, a5en la siguiente sección, y así sucesivamente.Tenga en cuenta que
####esSpecialUser/OwnerGroupyOthersen ese orden.Para
Specialatributos (el primer número en unchmodargumento de cuatro números ):Set UID- Ejecutar el archivo como propietario independientemente del usuario que lo ejecute (se muestra comosen la cadena de permisos legibles por humanos para laUsersección) = +4 (--sdebajoUser/Owner)Set GID- Ejecuta el archivo como grupo independientemente del usuario / grupo que lo ejecuta (se muestra comosen la cadena de permisos legibles por humanos para laGroupsección) = +2 (--sdebajoGroup)Sticky Bit- SÓLO EFECTIVO EN DIRECTORIOS: si está configurado, solo el usuario propietario del directoriorootpuede eliminar el directorio, y solo el propietario del archivo orootpuede eliminar archivos dentro de él. (se muestra comoten la cadena de permisos legibles por humanos para laOtherssección) = +1 (--tdebajoOthers)Para
User/Owner,GroupyOthersatributos (los últimos tres números de una serie de cuatrochmodargumento):Read= +4 (r--)Write= +2 (-w-)Execute(para archivos) o 'Enter Into / List Items' (para directorios) = +1 (--x)fuente
Se llama el
SETUIDbit. si está configurado porchmod 4555 test-file(en su caso),test-filecualquier usuario puede ejecutarlo como si el usuario fuera el propietario del archivo.Cuando
SETUIDse establece el bit, la ID de usuario efectiva (EUID) del usuario que no tiene permiso para ejecutar el archivo de otra manera (por permisos normales, por ejemplo0744), toma el EUID del propietario del archivo y puede ejecutar el archivo.fuente